

This is the new *CloudFormation Template Reference Guide*. Please update your bookmarks and links. For help getting started with CloudFormation, see the [AWS CloudFormation User Guide](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html).

# Amazon Bedrock
<a name="AWS_Bedrock"></a>

**Resource types**
+ [AWS::Bedrock::Agent](aws-resource-bedrock-agent.md)
+ [AWS::Bedrock::AgentAlias](aws-resource-bedrock-agentalias.md)
+ [AWS::Bedrock::ApplicationInferenceProfile](aws-resource-bedrock-applicationinferenceprofile.md)
+ [AWS::Bedrock::AutomatedReasoningPolicy](aws-resource-bedrock-automatedreasoningpolicy.md)
+ [AWS::Bedrock::AutomatedReasoningPolicyVersion](aws-resource-bedrock-automatedreasoningpolicyversion.md)
+ [AWS::Bedrock::Blueprint](aws-resource-bedrock-blueprint.md)
+ [AWS::Bedrock::DataAutomationLibrary](aws-resource-bedrock-dataautomationlibrary.md)
+ [AWS::Bedrock::DataAutomationProject](aws-resource-bedrock-dataautomationproject.md)
+ [AWS::Bedrock::DataSource](aws-resource-bedrock-datasource.md)
+ [AWS::Bedrock::EnforcedGuardrailConfiguration](aws-resource-bedrock-enforcedguardrailconfiguration.md)
+ [AWS::Bedrock::Flow](aws-resource-bedrock-flow.md)
+ [AWS::Bedrock::FlowAlias](aws-resource-bedrock-flowalias.md)
+ [AWS::Bedrock::FlowVersion](aws-resource-bedrock-flowversion.md)
+ [AWS::Bedrock::Guardrail](aws-resource-bedrock-guardrail.md)
+ [AWS::Bedrock::GuardrailVersion](aws-resource-bedrock-guardrailversion.md)
+ [AWS::Bedrock::IntelligentPromptRouter](aws-resource-bedrock-intelligentpromptrouter.md)
+ [AWS::Bedrock::KnowledgeBase](aws-resource-bedrock-knowledgebase.md)
+ [AWS::Bedrock::Prompt](aws-resource-bedrock-prompt.md)
+ [AWS::Bedrock::PromptVersion](aws-resource-bedrock-promptversion.md)
+ [AWS::Bedrock::ResourcePolicy](aws-resource-bedrock-resourcepolicy.md)

# AWS::Bedrock::Agent
<a name="aws-resource-bedrock-agent"></a>

Specifies an agent as a resource in a top-level template. Minimally, you must specify the following properties:
+ AgentName – Specify a name for the agent.
+ AgentResourceRoleArn – Specify the Amazon Resource Name (ARN) of the service role with permissions to invoke API operations on the agent. For more information, see [Create a service role for Agents for Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-permissions.html).
+ FoundationModel – Specify the model ID of a foundation model to use when invoking the agent. For more information, see [Supported regions and models for Agents for Amazon Bedrock](https://docs.aws.amazon.com//bedrock/latest/userguide/agents-supported.html).

For more information about using agents in Amazon Bedrock, see [Agents for Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html).

See the **Properties** section below for descriptions of both the required and optional properties.

## Syntax
<a name="aws-resource-bedrock-agent-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-agent-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::Agent",
  "Properties" : {
      "[ActionGroups](#cfn-bedrock-agent-actiongroups)" : [ AgentActionGroup, ... ],
      "[AgentCollaboration](#cfn-bedrock-agent-agentcollaboration)" : String,
      "[AgentCollaborators](#cfn-bedrock-agent-agentcollaborators)" : [ AgentCollaborator, ... ],
      "[AgentName](#cfn-bedrock-agent-agentname)" : String,
      "[AgentResourceRoleArn](#cfn-bedrock-agent-agentresourcerolearn)" : String,
      "[AutoPrepare](#cfn-bedrock-agent-autoprepare)" : Boolean,
      "[CustomerEncryptionKeyArn](#cfn-bedrock-agent-customerencryptionkeyarn)" : String,
      "[CustomOrchestration](#cfn-bedrock-agent-customorchestration)" : CustomOrchestration,
      "[Description](#cfn-bedrock-agent-description)" : String,
      "[FoundationModel](#cfn-bedrock-agent-foundationmodel)" : String,
      "[GuardrailConfiguration](#cfn-bedrock-agent-guardrailconfiguration)" : GuardrailConfiguration,
      "[IdleSessionTTLInSeconds](#cfn-bedrock-agent-idlesessionttlinseconds)" : Number,
      "[Instruction](#cfn-bedrock-agent-instruction)" : String,
      "[KnowledgeBases](#cfn-bedrock-agent-knowledgebases)" : [ AgentKnowledgeBase, ... ],
      "[MemoryConfiguration](#cfn-bedrock-agent-memoryconfiguration)" : MemoryConfiguration,
      "[OrchestrationType](#cfn-bedrock-agent-orchestrationtype)" : String,
      "[PromptOverrideConfiguration](#cfn-bedrock-agent-promptoverrideconfiguration)" : PromptOverrideConfiguration,
      "[SkipResourceInUseCheckOnDelete](#cfn-bedrock-agent-skipresourceinusecheckondelete)" : Boolean,
      "[Tags](#cfn-bedrock-agent-tags)" : {Key: Value, ...},
      "[TestAliasTags](#cfn-bedrock-agent-testaliastags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-bedrock-agent-syntax.yaml"></a>

```
Type: AWS::Bedrock::Agent
Properties:
  [ActionGroups](#cfn-bedrock-agent-actiongroups): 
    - AgentActionGroup
  [AgentCollaboration](#cfn-bedrock-agent-agentcollaboration): String
  [AgentCollaborators](#cfn-bedrock-agent-agentcollaborators): 
    - AgentCollaborator
  [AgentName](#cfn-bedrock-agent-agentname): String
  [AgentResourceRoleArn](#cfn-bedrock-agent-agentresourcerolearn): String
  [AutoPrepare](#cfn-bedrock-agent-autoprepare): Boolean
  [CustomerEncryptionKeyArn](#cfn-bedrock-agent-customerencryptionkeyarn): String
  [CustomOrchestration](#cfn-bedrock-agent-customorchestration): 
    CustomOrchestration
  [Description](#cfn-bedrock-agent-description): String
  [FoundationModel](#cfn-bedrock-agent-foundationmodel): String
  [GuardrailConfiguration](#cfn-bedrock-agent-guardrailconfiguration): 
    GuardrailConfiguration
  [IdleSessionTTLInSeconds](#cfn-bedrock-agent-idlesessionttlinseconds): Number
  [Instruction](#cfn-bedrock-agent-instruction): String
  [KnowledgeBases](#cfn-bedrock-agent-knowledgebases): 
    - AgentKnowledgeBase
  [MemoryConfiguration](#cfn-bedrock-agent-memoryconfiguration): 
    MemoryConfiguration
  [OrchestrationType](#cfn-bedrock-agent-orchestrationtype): String
  [PromptOverrideConfiguration](#cfn-bedrock-agent-promptoverrideconfiguration): 
    PromptOverrideConfiguration
  [SkipResourceInUseCheckOnDelete](#cfn-bedrock-agent-skipresourceinusecheckondelete): Boolean
  [Tags](#cfn-bedrock-agent-tags): 
    Key: Value
  [TestAliasTags](#cfn-bedrock-agent-testaliastags): 
    Key: Value
```

## Properties
<a name="aws-resource-bedrock-agent-properties"></a>

`ActionGroups`  <a name="cfn-bedrock-agent-actiongroups"></a>
The action groups that belong to an agent.  
*Required*: No  
*Type*: Array of [AgentActionGroup](aws-properties-bedrock-agent-agentactiongroup.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AgentCollaboration`  <a name="cfn-bedrock-agent-agentcollaboration"></a>
The agent's collaboration settings.  
*Required*: No  
*Type*: String  
*Allowed values*: `DISABLED | SUPERVISOR | SUPERVISOR_ROUTER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AgentCollaborators`  <a name="cfn-bedrock-agent-agentcollaborators"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [AgentCollaborator](aws-properties-bedrock-agent-agentcollaborator.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AgentName`  <a name="cfn-bedrock-agent-agentname"></a>
The name of the agent.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AgentResourceRoleArn`  <a name="cfn-bedrock-agent-agentresourcerolearn"></a>
The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the agent.  
*Required*: No  
*Type*: String  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AutoPrepare`  <a name="cfn-bedrock-agent-autoprepare"></a>
Specifies whether to automatically update the `DRAFT` version of the agent after making changes to the agent. The `DRAFT` version can be continually iterated upon during internal development. By default, this value is `false`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CustomerEncryptionKeyArn`  <a name="cfn-bedrock-agent-customerencryptionkeyarn"></a>
The Amazon Resource Name (ARN) of the AWS KMS key that encrypts the agent.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CustomOrchestration`  <a name="cfn-bedrock-agent-customorchestration"></a>
 Contains custom orchestration configurations for the agent.   
*Required*: No  
*Type*: [CustomOrchestration](aws-properties-bedrock-agent-customorchestration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-agent-description"></a>
The description of the agent.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FoundationModel`  <a name="cfn-bedrock-agent-foundationmodel"></a>
The foundation model used for orchestration by the agent.  
*Required*: No  
*Type*: String  
*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}))|([0-9]{12}:(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+))|(([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][_-]?)+)$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GuardrailConfiguration`  <a name="cfn-bedrock-agent-guardrailconfiguration"></a>
Details about the guardrail associated with the agent.  
*Required*: No  
*Type*: [GuardrailConfiguration](aws-properties-bedrock-agent-guardrailconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdleSessionTTLInSeconds`  <a name="cfn-bedrock-agent-idlesessionttlinseconds"></a>
The number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent.  
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.  
*Required*: No  
*Type*: Number  
*Minimum*: `60`  
*Maximum*: `5400`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Instruction`  <a name="cfn-bedrock-agent-instruction"></a>
Instructions that tell the agent what it should do and how it should interact with users.  
*Required*: No  
*Type*: String  
*Minimum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBases`  <a name="cfn-bedrock-agent-knowledgebases"></a>
The knowledge bases associated with the agent.  
*Required*: No  
*Type*: Array of [AgentKnowledgeBase](aws-properties-bedrock-agent-agentknowledgebase.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MemoryConfiguration`  <a name="cfn-bedrock-agent-memoryconfiguration"></a>
Contains memory configuration for the agent.  
*Required*: No  
*Type*: [MemoryConfiguration](aws-properties-bedrock-agent-memoryconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OrchestrationType`  <a name="cfn-bedrock-agent-orchestrationtype"></a>
 Specifies the orchestration strategy for the agent.   
*Required*: No  
*Type*: String  
*Allowed values*: `DEFAULT | CUSTOM_ORCHESTRATION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptOverrideConfiguration`  <a name="cfn-bedrock-agent-promptoverrideconfiguration"></a>
Contains configurations to override prompt templates in different parts of an agent sequence. For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html).  
*Required*: No  
*Type*: [PromptOverrideConfiguration](aws-properties-bedrock-agent-promptoverrideconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SkipResourceInUseCheckOnDelete`  <a name="cfn-bedrock-agent-skipresourceinusecheckondelete"></a>
Specifies whether to delete the resource even if it's in use. By default, this value is `false`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-agent-tags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TestAliasTags`  <a name="cfn-bedrock-agent-testaliastags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-agent-return-values"></a>

### Ref
<a name="aws-resource-bedrock-agent-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the agent base ID.

For example, `{ "Ref": "myAgent" }` could return the value `"AGENT12345"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-agent-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-agent-return-values-fn--getatt-fn--getatt"></a>

`AgentArn`  <a name="AgentArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the agent.

`AgentId`  <a name="AgentId-fn::getatt"></a>
The unique identifier of the agent.

`AgentStatus`  <a name="AgentStatus-fn::getatt"></a>
The status of the agent and whether it is ready for use. The following statuses are possible:  
+ CREATING – The agent is being created.
+ PREPARING – The agent is being prepared.
+ PREPARED – The agent is prepared and ready to be invoked.
+ NOT\$1PREPARED – The agent has been created but not yet prepared.
+ FAILED – The agent API operation failed.
+ UPDATING – The agent is being updated.
+ DELETING – The agent is being deleted.

`AgentVersion`  <a name="AgentVersion-fn::getatt"></a>
The version of the agent.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the agent was created.

`FailureReasons`  <a name="FailureReasons-fn::getatt"></a>
Contains reasons that the agent-related API that you invoked failed.

`PreparedAt`  <a name="PreparedAt-fn::getatt"></a>
The time at which the agent was last prepared.

`RecommendedActions`  <a name="RecommendedActions-fn::getatt"></a>
Contains recommended actions to take for the agent-related API that you invoked to succeed.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the agent was last updated.

## Examples
<a name="aws-resource-bedrock-agent--examples"></a>



### Create an agent
<a name="aws-resource-bedrock-agent--examples--Create_an_agent"></a>

The following example creates an agent that orchestrates on the Anthropic Claude v2 foundation model to help customers with IT problems. It contains one action group and one knowledge base.

#### YAML
<a name="aws-resource-bedrock-agent--examples--Create_an_agent--yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: "CFN stack for creating an agent"
Resources:
   ExampleAgentResource:
      Type: AWS::Bedrock::Agent
      Properties:
        AgentName: "Example Agent"
        AgentResourceRoleArn: "arn:aws:iam::123456789012:role/AmazonBedrockExecutionRoleForAgents_user"
        FoundationModel: "anthropic.claude-v2"
        Instruction: "You are an IT agent who solves customer's problems"
        Description: "Description is here"
        IdleSessionTTLInSeconds: 900
        CustomerEncryptionKeyArn: "arn:aws:kms:us-west-2:123456789012:key/1234abcd-ab12-34cd-56ef-abcdefg123456"
        ActionGroups:
          - ActionGroupName: "IT Action"
            Description: "Testing latest IT Management action"
            ActionGroupExecutor:
              Lambda: "arn:aws:lambda:us-west-2:123456789012:function:ItAgentLambda"
            ApiSchema:
              S3:
                S3BucketName: "apischema-s3"
                S3ObjectKey: "ApiSchema.json"
        KnowledgeBases:
          - KnowledgeBaseId: "1234567890"
            Description: "IT Knowledge Base"
            KnowledgeBaseState: ENABLED
```

#### JSON
<a name="aws-resource-bedrock-agent--examples--Create_an_agent--json"></a>

```
{
   "AWSTemplateFormatVersion": "2010-09-09",
   "Description": "CFN stack for creating an agent",
   "Resources": {
      "ExampleAgentResource": {
         "Type": "AWS::Bedrock::Agent",
         "Properties": {
            "AgentName": "Example Agent",
            "AgentResourceRoleArn": "arn:aws:iam::123456789012:role/AmazonBedrockExecutionRoleForAgents_user",
            "FoundationModel": "anthropic.claude-v2",
            "Instruction": "You are an IT agent who solves customer's problems",
            "Description": "Description is here",
            "IdleSessionTTLInSeconds": 900,
            "CustomerEncryptionKeyArn": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-ab12-34cd-56ef-abcdefg123456",
            "ActionGroups": [
               {
                  "ActionGroupName": "IT Action",
                  "Description": "Testing latest IT Management action",
                  "ActionGroupExecutor": {
                     "Lambda": "arn:aws:lambda:us-west-2:123456789012:function:ItAgentLambda"
                  },
                  "ApiSchema": {
                     "S3": {
                        "S3BucketName": "apischema-s3",
                        "S3ObjectKey": "ApiSchema.json"
                     }
                  }
               }
            ],
            "KnowledgeBases": [
               {
                  "KnowledgeBaseId": "1234567890",
                  "Description": "IT Knowledge Base",
                  "KnowledgeBaseState": "ENABLED"
               }
            ]
         }
      }
   }
}
```

# AWS::Bedrock::Agent ActionGroupExecutor
<a name="aws-properties-bedrock-agent-actiongroupexecutor"></a>

 Contains details about the Lambda function containing the business logic that is carried out upon invoking the action or the custom control method for handling the information elicited from the user. 

## Syntax
<a name="aws-properties-bedrock-agent-actiongroupexecutor-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-actiongroupexecutor-syntax.json"></a>

```
{
  "[CustomControl](#cfn-bedrock-agent-actiongroupexecutor-customcontrol)" : String,
  "[Lambda](#cfn-bedrock-agent-actiongroupexecutor-lambda)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-actiongroupexecutor-syntax.yaml"></a>

```
  [CustomControl](#cfn-bedrock-agent-actiongroupexecutor-customcontrol): String
  [Lambda](#cfn-bedrock-agent-actiongroupexecutor-lambda): String
```

## Properties
<a name="aws-properties-bedrock-agent-actiongroupexecutor-properties"></a>

`CustomControl`  <a name="cfn-bedrock-agent-actiongroupexecutor-customcontrol"></a>
 To return the action group invocation results directly in the `InvokeInlineAgent` response, specify `RETURN_CONTROL`.   
*Required*: No  
*Type*: String  
*Allowed values*: `RETURN_CONTROL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Lambda`  <a name="cfn-bedrock-agent-actiongroupexecutor-lambda"></a>
 The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.   
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws[a-zA-Z-]*)?:lambda:[a-z0-9-]{1,20}:\d{12}:function:[a-zA-Z0-9-_\.]+(:(\$LATEST|[a-zA-Z0-9-_]+))?$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent AgentActionGroup
<a name="aws-properties-bedrock-agent-agentactiongroup"></a>

 Contains details of the inline agent's action group. 

## Syntax
<a name="aws-properties-bedrock-agent-agentactiongroup-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-agentactiongroup-syntax.json"></a>

```
{
  "[ActionGroupExecutor](#cfn-bedrock-agent-agentactiongroup-actiongroupexecutor)" : ActionGroupExecutor,
  "[ActionGroupName](#cfn-bedrock-agent-agentactiongroup-actiongroupname)" : String,
  "[ActionGroupState](#cfn-bedrock-agent-agentactiongroup-actiongroupstate)" : String,
  "[ApiSchema](#cfn-bedrock-agent-agentactiongroup-apischema)" : APISchema,
  "[Description](#cfn-bedrock-agent-agentactiongroup-description)" : String,
  "[FunctionSchema](#cfn-bedrock-agent-agentactiongroup-functionschema)" : FunctionSchema,
  "[ParentActionGroupSignature](#cfn-bedrock-agent-agentactiongroup-parentactiongroupsignature)" : String,
  "[SkipResourceInUseCheckOnDelete](#cfn-bedrock-agent-agentactiongroup-skipresourceinusecheckondelete)" : Boolean
}
```

### YAML
<a name="aws-properties-bedrock-agent-agentactiongroup-syntax.yaml"></a>

```
  [ActionGroupExecutor](#cfn-bedrock-agent-agentactiongroup-actiongroupexecutor): 
    ActionGroupExecutor
  [ActionGroupName](#cfn-bedrock-agent-agentactiongroup-actiongroupname): String
  [ActionGroupState](#cfn-bedrock-agent-agentactiongroup-actiongroupstate): String
  [ApiSchema](#cfn-bedrock-agent-agentactiongroup-apischema): 
    APISchema
  [Description](#cfn-bedrock-agent-agentactiongroup-description): String
  [FunctionSchema](#cfn-bedrock-agent-agentactiongroup-functionschema): 
    FunctionSchema
  [ParentActionGroupSignature](#cfn-bedrock-agent-agentactiongroup-parentactiongroupsignature): String
  [SkipResourceInUseCheckOnDelete](#cfn-bedrock-agent-agentactiongroup-skipresourceinusecheckondelete): Boolean
```

## Properties
<a name="aws-properties-bedrock-agent-agentactiongroup-properties"></a>

`ActionGroupExecutor`  <a name="cfn-bedrock-agent-agentactiongroup-actiongroupexecutor"></a>
 The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action or the custom control method for handling the information elicited from the user.   
*Required*: No  
*Type*: [ActionGroupExecutor](aws-properties-bedrock-agent-actiongroupexecutor.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ActionGroupName`  <a name="cfn-bedrock-agent-agentactiongroup-actiongroupname"></a>
 The name of the action group.   
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ActionGroupState`  <a name="cfn-bedrock-agent-agentactiongroup-actiongroupstate"></a>
Specifies whether the action group is available for the agent to invoke or not when sending an [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html) request.  
*Required*: No  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ApiSchema`  <a name="cfn-bedrock-agent-agentactiongroup-apischema"></a>
 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](https://docs.aws.amazon.com//bedrock/latest/userguide/agents-api-schema.html).   
*Required*: No  
*Type*: [APISchema](aws-properties-bedrock-agent-apischema.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-agent-agentactiongroup-description"></a>
 A description of the action group.   
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FunctionSchema`  <a name="cfn-bedrock-agent-agentactiongroup-functionschema"></a>
 Contains details about the function schema for the action group or the JSON or YAML-formatted payload defining the schema.   
*Required*: No  
*Type*: [FunctionSchema](aws-properties-bedrock-agent-functionschema.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ParentActionGroupSignature`  <a name="cfn-bedrock-agent-agentactiongroup-parentactiongroupsignature"></a>
If this field is set as `AMAZON.UserInput`, the agent can request the user for additional information when trying to complete a task. The `description`, `apiSchema`, and `actionGroupExecutor` fields must be blank for this action group.  
During orchestration, if the 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](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_Observation.html) reprompting the user for more information.  
*Required*: No  
*Type*: String  
*Allowed values*: `AMAZON.UserInput | AMAZON.CodeInterpreter`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SkipResourceInUseCheckOnDelete`  <a name="cfn-bedrock-agent-agentactiongroup-skipresourceinusecheckondelete"></a>
Specifies whether to delete the resource even if it's in use. By default, this value is `false`.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent AgentCollaborator
<a name="aws-properties-bedrock-agent-agentcollaborator"></a>

An agent collaborator.

## Syntax
<a name="aws-properties-bedrock-agent-agentcollaborator-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-agentcollaborator-syntax.json"></a>

```
{
  "[AgentDescriptor](#cfn-bedrock-agent-agentcollaborator-agentdescriptor)" : AgentDescriptor,
  "[CollaborationInstruction](#cfn-bedrock-agent-agentcollaborator-collaborationinstruction)" : String,
  "[CollaboratorName](#cfn-bedrock-agent-agentcollaborator-collaboratorname)" : String,
  "[RelayConversationHistory](#cfn-bedrock-agent-agentcollaborator-relayconversationhistory)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-agentcollaborator-syntax.yaml"></a>

```
  [AgentDescriptor](#cfn-bedrock-agent-agentcollaborator-agentdescriptor): 
    AgentDescriptor
  [CollaborationInstruction](#cfn-bedrock-agent-agentcollaborator-collaborationinstruction): String
  [CollaboratorName](#cfn-bedrock-agent-agentcollaborator-collaboratorname): String
  [RelayConversationHistory](#cfn-bedrock-agent-agentcollaborator-relayconversationhistory): String
```

## Properties
<a name="aws-properties-bedrock-agent-agentcollaborator-properties"></a>

`AgentDescriptor`  <a name="cfn-bedrock-agent-agentcollaborator-agentdescriptor"></a>
The collaborator's agent descriptor.  
*Required*: Yes  
*Type*: [AgentDescriptor](aws-properties-bedrock-agent-agentdescriptor.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CollaborationInstruction`  <a name="cfn-bedrock-agent-agentcollaborator-collaborationinstruction"></a>
The collaborator's instructions.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `4000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CollaboratorName`  <a name="cfn-bedrock-agent-agentcollaborator-collaboratorname"></a>
The collaborator's collaborator name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `([0-9a-zA-Z][_-]?){1,100}`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RelayConversationHistory`  <a name="cfn-bedrock-agent-agentcollaborator-relayconversationhistory"></a>
The collaborator's relay conversation history.  
*Required*: No  
*Type*: String  
*Allowed values*: `TO_COLLABORATOR | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent AgentDescriptor
<a name="aws-properties-bedrock-agent-agentdescriptor"></a>

An agent descriptor.

## Syntax
<a name="aws-properties-bedrock-agent-agentdescriptor-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-agentdescriptor-syntax.json"></a>

```
{
  "[AliasArn](#cfn-bedrock-agent-agentdescriptor-aliasarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-agentdescriptor-syntax.yaml"></a>

```
  [AliasArn](#cfn-bedrock-agent-agentdescriptor-aliasarn): String
```

## Properties
<a name="aws-properties-bedrock-agent-agentdescriptor-properties"></a>

`AliasArn`  <a name="cfn-bedrock-agent-agentdescriptor-aliasarn"></a>
The agent's alias ARN.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws[a-zA-Z-]*)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent AgentKnowledgeBase
<a name="aws-properties-bedrock-agent-agentknowledgebase"></a>

Contains details about a knowledge base that is associated with an agent.

## Syntax
<a name="aws-properties-bedrock-agent-agentknowledgebase-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-agentknowledgebase-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-agent-agentknowledgebase-description)" : String,
  "[KnowledgeBaseId](#cfn-bedrock-agent-agentknowledgebase-knowledgebaseid)" : String,
  "[KnowledgeBaseState](#cfn-bedrock-agent-agentknowledgebase-knowledgebasestate)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-agentknowledgebase-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-agent-agentknowledgebase-description): String
  [KnowledgeBaseId](#cfn-bedrock-agent-agentknowledgebase-knowledgebaseid): String
  [KnowledgeBaseState](#cfn-bedrock-agent-agentknowledgebase-knowledgebasestate): String
```

## Properties
<a name="aws-properties-bedrock-agent-agentknowledgebase-properties"></a>

`Description`  <a name="cfn-bedrock-agent-agentknowledgebase-description"></a>
The description of the association between the agent and the knowledge base.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBaseId`  <a name="cfn-bedrock-agent-agentknowledgebase-knowledgebaseid"></a>
The unique identifier of the association between the agent and the knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z]{10}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBaseState`  <a name="cfn-bedrock-agent-agentknowledgebase-knowledgebasestate"></a>
Specifies whether to use the knowledge base or not when sending an [InvokeAgent](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeAgent.html) request.  
*Required*: No  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent APISchema
<a name="aws-properties-bedrock-agent-apischema"></a>

 Contains details about the OpenAPI schema for the action group. For more information, see [Action group OpenAPI schemas](https://docs.aws.amazon.com//bedrock/latest/userguide/agents-api-schema.html). You can either include the schema directly in the payload field or you can upload it to an S3 bucket and specify the S3 bucket location in the s3 field. 

## Syntax
<a name="aws-properties-bedrock-agent-apischema-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-apischema-syntax.json"></a>

```
{
  "[Payload](#cfn-bedrock-agent-apischema-payload)" : String,
  "[S3](#cfn-bedrock-agent-apischema-s3)" : S3Identifier
}
```

### YAML
<a name="aws-properties-bedrock-agent-apischema-syntax.yaml"></a>

```
  [Payload](#cfn-bedrock-agent-apischema-payload): String
  [S3](#cfn-bedrock-agent-apischema-s3): 
    S3Identifier
```

## Properties
<a name="aws-properties-bedrock-agent-apischema-properties"></a>

`Payload`  <a name="cfn-bedrock-agent-apischema-payload"></a>
 The JSON or YAML-formatted payload defining the OpenAPI schema for the action group.   
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3`  <a name="cfn-bedrock-agent-apischema-s3"></a>
 Contains details about the S3 object containing the OpenAPI schema for the action group.   
*Required*: No  
*Type*: [S3Identifier](aws-properties-bedrock-agent-s3identifier.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent CustomOrchestration
<a name="aws-properties-bedrock-agent-customorchestration"></a>

Contains details of the custom orchestration configured for the agent. 

## Syntax
<a name="aws-properties-bedrock-agent-customorchestration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-customorchestration-syntax.json"></a>

```
{
  "[Executor](#cfn-bedrock-agent-customorchestration-executor)" : OrchestrationExecutor
}
```

### YAML
<a name="aws-properties-bedrock-agent-customorchestration-syntax.yaml"></a>

```
  [Executor](#cfn-bedrock-agent-customorchestration-executor): 
    OrchestrationExecutor
```

## Properties
<a name="aws-properties-bedrock-agent-customorchestration-properties"></a>

`Executor`  <a name="cfn-bedrock-agent-customorchestration-executor"></a>
The structure of the executor invoking the actions in custom orchestration.   
*Required*: No  
*Type*: [OrchestrationExecutor](aws-properties-bedrock-agent-orchestrationexecutor.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent Function
<a name="aws-properties-bedrock-agent-function"></a>

Defines parameters that the agent needs to invoke from the user to complete the function. Corresponds to an action in an action group.

This data type is used in the following API operations:
+  [CreateAgentActionGroup request](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateAgentActionGroup.html#API_agent_CreateAgentActionGroup_RequestSyntax) 
+  [CreateAgentActionGroup response](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateAgentActionGroup.html#API_agent_CreateAgentActionGroup_ResponseSyntax) 
+  [UpdateAgentActionGroup request](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdateAgentActionGroup.html#API_agent_UpdateAgentActionGroup_RequestSyntax) 
+  [UpdateAgentActionGroup response](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_UpdateAgentActionGroup.html#API_agent_UpdateAgentActionGroup_ResponseSyntax) 
+  [GetAgentActionGroup response](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetAgentActionGroup.html#API_agent_GetAgentActionGroup_ResponseSyntax) 

## Syntax
<a name="aws-properties-bedrock-agent-function-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-function-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-agent-function-description)" : String,
  "[Name](#cfn-bedrock-agent-function-name)" : String,
  "[Parameters](#cfn-bedrock-agent-function-parameters)" : {Key: Value, ...},
  "[RequireConfirmation](#cfn-bedrock-agent-function-requireconfirmation)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-function-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-agent-function-description): String
  [Name](#cfn-bedrock-agent-function-name): String
  [Parameters](#cfn-bedrock-agent-function-parameters): 
    Key: Value
  [RequireConfirmation](#cfn-bedrock-agent-function-requireconfirmation): String
```

## Properties
<a name="aws-properties-bedrock-agent-function-properties"></a>

`Description`  <a name="cfn-bedrock-agent-function-description"></a>
A description of the function and its purpose.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-agent-function-name"></a>
A name for the function.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Parameters`  <a name="cfn-bedrock-agent-function-parameters"></a>
The parameters that the agent elicits from the user to fulfill the function.  
*Required*: No  
*Type*: Object of [ParameterDetail](aws-properties-bedrock-agent-parameterdetail.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RequireConfirmation`  <a name="cfn-bedrock-agent-function-requireconfirmation"></a>
Contains information if user confirmation is required to invoke the function.  
*Required*: No  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent FunctionSchema
<a name="aws-properties-bedrock-agent-functionschema"></a>

 Contains details about the function schema for the action group or the JSON or YAML-formatted payload defining the schema. 

## Syntax
<a name="aws-properties-bedrock-agent-functionschema-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-functionschema-syntax.json"></a>

```
{
  "[Functions](#cfn-bedrock-agent-functionschema-functions)" : [ Function, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-agent-functionschema-syntax.yaml"></a>

```
  [Functions](#cfn-bedrock-agent-functionschema-functions): 
    - Function
```

## Properties
<a name="aws-properties-bedrock-agent-functionschema-properties"></a>

`Functions`  <a name="cfn-bedrock-agent-functionschema-functions"></a>
 A list of functions that each define an action in the action group.   
*Required*: Yes  
*Type*: Array of [Function](aws-properties-bedrock-agent-function.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent GuardrailConfiguration
<a name="aws-properties-bedrock-agent-guardrailconfiguration"></a>

Configuration information for a guardrail that you use with the [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) operation.

## Syntax
<a name="aws-properties-bedrock-agent-guardrailconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-guardrailconfiguration-syntax.json"></a>

```
{
  "[GuardrailIdentifier](#cfn-bedrock-agent-guardrailconfiguration-guardrailidentifier)" : String,
  "[GuardrailVersion](#cfn-bedrock-agent-guardrailconfiguration-guardrailversion)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-guardrailconfiguration-syntax.yaml"></a>

```
  [GuardrailIdentifier](#cfn-bedrock-agent-guardrailconfiguration-guardrailidentifier): String
  [GuardrailVersion](#cfn-bedrock-agent-guardrailconfiguration-guardrailversion): String
```

## Properties
<a name="aws-properties-bedrock-agent-guardrailconfiguration-properties"></a>

`GuardrailIdentifier`  <a name="cfn-bedrock-agent-guardrailconfiguration-guardrailidentifier"></a>
The identifier for the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GuardrailVersion`  <a name="cfn-bedrock-agent-guardrailconfiguration-guardrailversion"></a>
The version of the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^(([0-9]{1,8})|(DRAFT))$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent InferenceConfiguration
<a name="aws-properties-bedrock-agent-inferenceconfiguration"></a>

Base inference parameters to pass to a model in a call to [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) or [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html). For more information, see [Inference parameters for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).

If you need to pass additional parameters that the model supports, use the `additionalModelRequestFields` request field in the call to `Converse` or `ConverseStream`. For more information, see [Model parameters](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).

## Syntax
<a name="aws-properties-bedrock-agent-inferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-inferenceconfiguration-syntax.json"></a>

```
{
  "[MaximumLength](#cfn-bedrock-agent-inferenceconfiguration-maximumlength)" : Number,
  "[StopSequences](#cfn-bedrock-agent-inferenceconfiguration-stopsequences)" : [ String, ... ],
  "[Temperature](#cfn-bedrock-agent-inferenceconfiguration-temperature)" : Number,
  "[TopK](#cfn-bedrock-agent-inferenceconfiguration-topk)" : Number,
  "[TopP](#cfn-bedrock-agent-inferenceconfiguration-topp)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-agent-inferenceconfiguration-syntax.yaml"></a>

```
  [MaximumLength](#cfn-bedrock-agent-inferenceconfiguration-maximumlength): Number
  [StopSequences](#cfn-bedrock-agent-inferenceconfiguration-stopsequences): 
    - String
  [Temperature](#cfn-bedrock-agent-inferenceconfiguration-temperature): Number
  [TopK](#cfn-bedrock-agent-inferenceconfiguration-topk): Number
  [TopP](#cfn-bedrock-agent-inferenceconfiguration-topp): Number
```

## Properties
<a name="aws-properties-bedrock-agent-inferenceconfiguration-properties"></a>

`MaximumLength`  <a name="cfn-bedrock-agent-inferenceconfiguration-maximumlength"></a>
The maximum number of tokens allowed in the generated response.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `131072`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StopSequences`  <a name="cfn-bedrock-agent-inferenceconfiguration-stopsequences"></a>
A list of stop sequences. A stop sequence is a sequence of characters that causes the model to stop generating the response.   
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `4`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Temperature`  <a name="cfn-bedrock-agent-inferenceconfiguration-temperature"></a>
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.  
The default value is the default value for the model that you are using. For more information, see [Inference parameters for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).   
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopK`  <a name="cfn-bedrock-agent-inferenceconfiguration-topk"></a>
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.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopP`  <a name="cfn-bedrock-agent-inferenceconfiguration-topp"></a>
The percentage of most-likely candidates that the model considers for the next token. For example, if you choose a value of 0.8 for `topP`, the model selects from the top 80% of the probability distribution of tokens that could be next in the sequence.  
The default value is the default value for the model that you are using. For more information, see [Inference parameters for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).   
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent MemoryConfiguration
<a name="aws-properties-bedrock-agent-memoryconfiguration"></a>

Details of the memory configuration.

## Syntax
<a name="aws-properties-bedrock-agent-memoryconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-memoryconfiguration-syntax.json"></a>

```
{
  "[EnabledMemoryTypes](#cfn-bedrock-agent-memoryconfiguration-enabledmemorytypes)" : [ String, ... ],
  "[SessionSummaryConfiguration](#cfn-bedrock-agent-memoryconfiguration-sessionsummaryconfiguration)" : SessionSummaryConfiguration,
  "[StorageDays](#cfn-bedrock-agent-memoryconfiguration-storagedays)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-agent-memoryconfiguration-syntax.yaml"></a>

```
  [EnabledMemoryTypes](#cfn-bedrock-agent-memoryconfiguration-enabledmemorytypes): 
    - String
  [SessionSummaryConfiguration](#cfn-bedrock-agent-memoryconfiguration-sessionsummaryconfiguration): 
    SessionSummaryConfiguration
  [StorageDays](#cfn-bedrock-agent-memoryconfiguration-storagedays): Number
```

## Properties
<a name="aws-properties-bedrock-agent-memoryconfiguration-properties"></a>

`EnabledMemoryTypes`  <a name="cfn-bedrock-agent-memoryconfiguration-enabledmemorytypes"></a>
The type of memory that is stored.   
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SessionSummaryConfiguration`  <a name="cfn-bedrock-agent-memoryconfiguration-sessionsummaryconfiguration"></a>
Contains the configuration for SESSION\$1SUMMARY memory type enabled for the agent.   
*Required*: No  
*Type*: [SessionSummaryConfiguration](aws-properties-bedrock-agent-sessionsummaryconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StorageDays`  <a name="cfn-bedrock-agent-memoryconfiguration-storagedays"></a>
The number of days the agent is configured to retain the conversational context.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `365`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent OrchestrationExecutor
<a name="aws-properties-bedrock-agent-orchestrationexecutor"></a>

The structure of the executor invoking the actions in custom orchestration.

## Syntax
<a name="aws-properties-bedrock-agent-orchestrationexecutor-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-orchestrationexecutor-syntax.json"></a>

```
{
  "[Lambda](#cfn-bedrock-agent-orchestrationexecutor-lambda)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-orchestrationexecutor-syntax.yaml"></a>

```
  [Lambda](#cfn-bedrock-agent-orchestrationexecutor-lambda): String
```

## Properties
<a name="aws-properties-bedrock-agent-orchestrationexecutor-properties"></a>

`Lambda`  <a name="cfn-bedrock-agent-orchestrationexecutor-lambda"></a>
The Amazon Resource Name (ARN) of the Lambda function containing the business logic that is carried out upon invoking the action.   
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:(aws[a-zA-Z-]*)?:lambda:[a-z0-9-]{1,20}:\d{12}:function:[a-zA-Z0-9-_\.]+(:(\$LATEST|[a-zA-Z0-9-_]+))?$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent ParameterDetail
<a name="aws-properties-bedrock-agent-parameterdetail"></a>

 Contains details about a parameter in a function for an action group. 

## Syntax
<a name="aws-properties-bedrock-agent-parameterdetail-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-parameterdetail-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-agent-parameterdetail-description)" : String,
  "[Required](#cfn-bedrock-agent-parameterdetail-required)" : Boolean,
  "[Type](#cfn-bedrock-agent-parameterdetail-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-parameterdetail-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-agent-parameterdetail-description): String
  [Required](#cfn-bedrock-agent-parameterdetail-required): Boolean
  [Type](#cfn-bedrock-agent-parameterdetail-type): String
```

## Properties
<a name="aws-properties-bedrock-agent-parameterdetail-properties"></a>

`Description`  <a name="cfn-bedrock-agent-parameterdetail-description"></a>
 A description of the parameter. Helps the foundation model determine how to elicit the parameters from the user.   
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Required`  <a name="cfn-bedrock-agent-parameterdetail-required"></a>
 Whether the parameter is required for the agent to complete the function for action group invocation.   
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-agent-parameterdetail-type"></a>
 The data type of the parameter.   
*Required*: Yes  
*Type*: String  
*Allowed values*: `string | number | integer | boolean | array`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent PromptConfiguration
<a name="aws-properties-bedrock-agent-promptconfiguration"></a>

 Contains configurations to override a prompt template in one part of an agent sequence. For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html). 

## Syntax
<a name="aws-properties-bedrock-agent-promptconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-promptconfiguration-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-agent-promptconfiguration-additionalmodelrequestfields)" : Json,
  "[BasePromptTemplate](#cfn-bedrock-agent-promptconfiguration-baseprompttemplate)" : String,
  "[FoundationModel](#cfn-bedrock-agent-promptconfiguration-foundationmodel)" : String,
  "[InferenceConfiguration](#cfn-bedrock-agent-promptconfiguration-inferenceconfiguration)" : InferenceConfiguration,
  "[ParserMode](#cfn-bedrock-agent-promptconfiguration-parsermode)" : String,
  "[PromptCreationMode](#cfn-bedrock-agent-promptconfiguration-promptcreationmode)" : String,
  "[PromptState](#cfn-bedrock-agent-promptconfiguration-promptstate)" : String,
  "[PromptType](#cfn-bedrock-agent-promptconfiguration-prompttype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-promptconfiguration-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-agent-promptconfiguration-additionalmodelrequestfields): Json
  [BasePromptTemplate](#cfn-bedrock-agent-promptconfiguration-baseprompttemplate): String
  [FoundationModel](#cfn-bedrock-agent-promptconfiguration-foundationmodel): String
  [InferenceConfiguration](#cfn-bedrock-agent-promptconfiguration-inferenceconfiguration): 
    InferenceConfiguration
  [ParserMode](#cfn-bedrock-agent-promptconfiguration-parsermode): String
  [PromptCreationMode](#cfn-bedrock-agent-promptconfiguration-promptcreationmode): String
  [PromptState](#cfn-bedrock-agent-promptconfiguration-promptstate): String
  [PromptType](#cfn-bedrock-agent-promptconfiguration-prompttype): String
```

## Properties
<a name="aws-properties-bedrock-agent-promptconfiguration-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-agent-promptconfiguration-additionalmodelrequestfields"></a>
If the Converse or ConverseStream operations support the model, `additionalModelRequestFields` contains additional inference parameters, beyond the base set of inference parameters in the `inferenceConfiguration` field.   
For more information, see [Inference request parameters and response fields for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BasePromptTemplate`  <a name="cfn-bedrock-agent-promptconfiguration-baseprompttemplate"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-placeholders.html). For more information, see [Configure the prompt templates](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts-configure.html).  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FoundationModel`  <a name="cfn-bedrock-agent-promptconfiguration-foundationmodel"></a>
The agent's foundation model.  
*Required*: No  
*Type*: String  
*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}))|([0-9]{12}:(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+))|(([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][_-]?)+)$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfiguration`  <a name="cfn-bedrock-agent-promptconfiguration-inferenceconfiguration"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).  
*Required*: No  
*Type*: [InferenceConfiguration](aws-properties-bedrock-agent-inferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ParserMode`  <a name="cfn-bedrock-agent-promptconfiguration-parsermode"></a>
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 `OVERRIDDEN`, the `overrideLambda` field in the [PromptOverrideConfiguration](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptOverrideConfiguration.html) must be specified with the ARN of a Lambda function.  
*Required*: No  
*Type*: String  
*Allowed values*: `DEFAULT | OVERRIDDEN`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptCreationMode`  <a name="cfn-bedrock-agent-promptconfiguration-promptcreationmode"></a>
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.  
*Required*: No  
*Type*: String  
*Allowed values*: `DEFAULT | OVERRIDDEN`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptState`  <a name="cfn-bedrock-agent-promptconfiguration-promptstate"></a>
Specifies whether to allow the inline 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.  
+ `PRE_PROCESSING` – `ENABLED`
+ `ORCHESTRATION` – `ENABLED`
+ `KNOWLEDGE_BASE_RESPONSE_GENERATION` – `ENABLED`
+ `POST_PROCESSING` – `DISABLED`
*Required*: No  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptType`  <a name="cfn-bedrock-agent-promptconfiguration-prompttype"></a>
 The step in the agent sequence that this prompt configuration applies to.   
*Required*: No  
*Type*: String  
*Allowed values*: `PRE_PROCESSING | ORCHESTRATION | POST_PROCESSING | ROUTING_CLASSIFIER | MEMORY_SUMMARIZATION | KNOWLEDGE_BASE_RESPONSE_GENERATION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent PromptOverrideConfiguration
<a name="aws-properties-bedrock-agent-promptoverrideconfiguration"></a>

Contains configurations to override prompts in different parts of an agent sequence. For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html).

## Syntax
<a name="aws-properties-bedrock-agent-promptoverrideconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-promptoverrideconfiguration-syntax.json"></a>

```
{
  "[OverrideLambda](#cfn-bedrock-agent-promptoverrideconfiguration-overridelambda)" : String,
  "[PromptConfigurations](#cfn-bedrock-agent-promptoverrideconfiguration-promptconfigurations)" : [ PromptConfiguration, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-agent-promptoverrideconfiguration-syntax.yaml"></a>

```
  [OverrideLambda](#cfn-bedrock-agent-promptoverrideconfiguration-overridelambda): String
  [PromptConfigurations](#cfn-bedrock-agent-promptoverrideconfiguration-promptconfigurations): 
    - PromptConfiguration
```

## Properties
<a name="aws-properties-bedrock-agent-promptoverrideconfiguration-properties"></a>

`OverrideLambda`  <a name="cfn-bedrock-agent-promptoverrideconfiguration-overridelambda"></a>
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 Amazon Bedrock Agents](https://docs.aws.amazon.com/bedrock/latest/userguide/lambda-parser.html).  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:(aws[a-zA-Z-]*)?:lambda:[a-z0-9-]{1,20}:\d{12}:function:[a-zA-Z0-9-_\.]+(:(\$LATEST|[a-zA-Z0-9-_]+))?$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptConfigurations`  <a name="cfn-bedrock-agent-promptoverrideconfiguration-promptconfigurations"></a>
Contains configurations to override a prompt template in one part of an agent sequence. For more information, see [Advanced prompts](https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html).  
*Required*: Yes  
*Type*: Array of [PromptConfiguration](aws-properties-bedrock-agent-promptconfiguration.md)  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent S3Identifier
<a name="aws-properties-bedrock-agent-s3identifier"></a>

 The identifier information for an Amazon S3 bucket. 

## Syntax
<a name="aws-properties-bedrock-agent-s3identifier-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-s3identifier-syntax.json"></a>

```
{
  "[S3BucketName](#cfn-bedrock-agent-s3identifier-s3bucketname)" : String,
  "[S3ObjectKey](#cfn-bedrock-agent-s3identifier-s3objectkey)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agent-s3identifier-syntax.yaml"></a>

```
  [S3BucketName](#cfn-bedrock-agent-s3identifier-s3bucketname): String
  [S3ObjectKey](#cfn-bedrock-agent-s3identifier-s3objectkey): String
```

## Properties
<a name="aws-properties-bedrock-agent-s3identifier-properties"></a>

`S3BucketName`  <a name="cfn-bedrock-agent-s3identifier-s3bucketname"></a>
 The name of the S3 bucket.   
*Required*: No  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3ObjectKey`  <a name="cfn-bedrock-agent-s3identifier-s3objectkey"></a>
 The S3 object key for the S3 resource.   
*Required*: No  
*Type*: String  
*Pattern*: `^[\.\-\!\*\_\'\(\)a-zA-Z0-9][\.\-\!\*\_\'\(\)\/a-zA-Z0-9]*$`  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Agent SessionSummaryConfiguration
<a name="aws-properties-bedrock-agent-sessionsummaryconfiguration"></a>

Configuration for SESSION\$1SUMMARY memory type enabled for the agent.

## Syntax
<a name="aws-properties-bedrock-agent-sessionsummaryconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agent-sessionsummaryconfiguration-syntax.json"></a>

```
{
  "[MaxRecentSessions](#cfn-bedrock-agent-sessionsummaryconfiguration-maxrecentsessions)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-agent-sessionsummaryconfiguration-syntax.yaml"></a>

```
  [MaxRecentSessions](#cfn-bedrock-agent-sessionsummaryconfiguration-maxrecentsessions): Number
```

## Properties
<a name="aws-properties-bedrock-agent-sessionsummaryconfiguration-properties"></a>

`MaxRecentSessions`  <a name="cfn-bedrock-agent-sessionsummaryconfiguration-maxrecentsessions"></a>
Maximum number of recent session summaries to include in the agent's prompt context.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AgentAlias
<a name="aws-resource-bedrock-agentalias"></a>

Specifies an agent alias as a resource in a top-level template. Minimally, you must specify the following properties:
+ AgentAliasName – Specify a name for the alias.

For more information about creating aliases for an agent in Amazon Bedrock, see [Deploy an Amazon Bedrock agent](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-deploy.html).

See the **Properties** section below for descriptions of both the required and optional properties.

## Syntax
<a name="aws-resource-bedrock-agentalias-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-agentalias-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::AgentAlias",
  "Properties" : {
      "[AgentAliasName](#cfn-bedrock-agentalias-agentaliasname)" : String,
      "[AgentId](#cfn-bedrock-agentalias-agentid)" : String,
      "[Description](#cfn-bedrock-agentalias-description)" : String,
      "[RoutingConfiguration](#cfn-bedrock-agentalias-routingconfiguration)" : [ AgentAliasRoutingConfigurationListItem, ... ],
      "[Tags](#cfn-bedrock-agentalias-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-bedrock-agentalias-syntax.yaml"></a>

```
Type: AWS::Bedrock::AgentAlias
Properties:
  [AgentAliasName](#cfn-bedrock-agentalias-agentaliasname): String
  [AgentId](#cfn-bedrock-agentalias-agentid): String
  [Description](#cfn-bedrock-agentalias-description): String
  [RoutingConfiguration](#cfn-bedrock-agentalias-routingconfiguration): 
    - AgentAliasRoutingConfigurationListItem
  [Tags](#cfn-bedrock-agentalias-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-bedrock-agentalias-properties"></a>

`AgentAliasName`  <a name="cfn-bedrock-agentalias-agentaliasname"></a>
The name of the alias of the agent.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`AgentId`  <a name="cfn-bedrock-agentalias-agentid"></a>
The unique identifier of the agent.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z]{10}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Description`  <a name="cfn-bedrock-agentalias-description"></a>
The description of the alias of the agent.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoutingConfiguration`  <a name="cfn-bedrock-agentalias-routingconfiguration"></a>
Contains details about the routing configuration of the alias.  
*Required*: No  
*Type*: Array of [AgentAliasRoutingConfigurationListItem](aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem.md)  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-agentalias-tags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-agentalias-return-values"></a>

### Ref
<a name="aws-resource-bedrock-agentalias-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the agent ID and the agent alias ID, separated by a pipe (`|`).

For example, `{ "Ref": "myAgentAlias" }` could return the value `"AGENT12345|ALIAS12345"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-agentalias-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-agentalias-return-values-fn--getatt-fn--getatt"></a>

`AgentAliasArn`  <a name="AgentAliasArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the alias of the agent.

`AgentAliasHistoryEvents`  <a name="AgentAliasHistoryEvents-fn::getatt"></a>
Contains details about the history of the alias.

`AgentAliasId`  <a name="AgentAliasId-fn::getatt"></a>
The unique identifier of the alias of the agent.

`AgentAliasStatus`  <a name="AgentAliasStatus-fn::getatt"></a>
The status of the alias of the agent and whether it is ready for use. The following statuses are possible:  
+ CREATING – The agent alias is being created.
+ PREPARED – The agent alias is finished being created or updated and is ready to be invoked.
+ FAILED – The agent alias API operation failed.
+ UPDATING – The agent alias is being updated.
+ DELETING – The agent alias is being deleted.
+ DISSOCIATED - The agent alias has no version associated with it.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the alias of the agent was created.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the alias was last updated.

## Examples
<a name="aws-resource-bedrock-agentalias--examples"></a>



### Create an alias for an agent
<a name="aws-resource-bedrock-agentalias--examples--Create_an_alias_for_an_agent"></a>

The following example creates an alias that points to version 1 of an agent.

#### YAML
<a name="aws-resource-bedrock-agentalias--examples--Create_an_alias_for_an_agent--yaml"></a>

```
AWSTemplateFormatVersion: 2010-09-09
Description: "CFN stack for creating an AgentAlias"
Resources:
  ExampleAgentAliasResource:
    Type: AWS::Bedrock::AgentAlias
    Properties:
      AgentId: "1234567890"
      AgentAliasName: "TestAlias"
      Description: "Alias for testing"
      RoutingConfiguration:
        - AgentVersion: "1"
```

#### JSON
<a name="aws-resource-bedrock-agentalias--examples--Create_an_alias_for_an_agent--json"></a>

```
{
   "AWSTemplateFormatVersion": "2010-09-09",
   "Description": "CFN stack for creating an AgentAlias",
   "Resources": {
      "ExampleAgentAliasResource": {
         "Type": "AWS::Bedrock::AgentAlias",
         "Properties": {
            "AgentId": "1234567890",
            "AgentAliasName": "TestAlias",
            "Description": "Alias for testing",
            "RoutingConfiguration": {
               "AgentVersion": "1"
            }
         }
      }
   }
}
```

# AWS::Bedrock::AgentAlias AgentAliasHistoryEvent
<a name="aws-properties-bedrock-agentalias-agentaliashistoryevent"></a>

Contains details about the history of the alias.

## Syntax
<a name="aws-properties-bedrock-agentalias-agentaliashistoryevent-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agentalias-agentaliashistoryevent-syntax.json"></a>

```
{
  "[EndDate](#cfn-bedrock-agentalias-agentaliashistoryevent-enddate)" : String,
  "[RoutingConfiguration](#cfn-bedrock-agentalias-agentaliashistoryevent-routingconfiguration)" : [ AgentAliasRoutingConfigurationListItem, ... ],
  "[StartDate](#cfn-bedrock-agentalias-agentaliashistoryevent-startdate)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agentalias-agentaliashistoryevent-syntax.yaml"></a>

```
  [EndDate](#cfn-bedrock-agentalias-agentaliashistoryevent-enddate): String
  [RoutingConfiguration](#cfn-bedrock-agentalias-agentaliashistoryevent-routingconfiguration): 
    - AgentAliasRoutingConfigurationListItem
  [StartDate](#cfn-bedrock-agentalias-agentaliashistoryevent-startdate): String
```

## Properties
<a name="aws-properties-bedrock-agentalias-agentaliashistoryevent-properties"></a>

`EndDate`  <a name="cfn-bedrock-agentalias-agentaliashistoryevent-enddate"></a>
The date that the alias stopped being associated to the version in the `routingConfiguration` object  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoutingConfiguration`  <a name="cfn-bedrock-agentalias-agentaliashistoryevent-routingconfiguration"></a>
Contains details about the version of the agent with which the alias is associated.  
*Required*: No  
*Type*: Array of [AgentAliasRoutingConfigurationListItem](aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem.md)  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StartDate`  <a name="cfn-bedrock-agentalias-agentaliashistoryevent-startdate"></a>
The date that the alias began being associated to the version in the `routingConfiguration` object.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AgentAlias AgentAliasRoutingConfigurationListItem
<a name="aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem"></a>

Contains details about the routing configuration of the alias.

## Syntax
<a name="aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem-syntax.json"></a>

```
{
  "[AgentVersion](#cfn-bedrock-agentalias-agentaliasroutingconfigurationlistitem-agentversion)" : String
}
```

### YAML
<a name="aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem-syntax.yaml"></a>

```
  [AgentVersion](#cfn-bedrock-agentalias-agentaliasroutingconfigurationlistitem-agentversion): String
```

## Properties
<a name="aws-properties-bedrock-agentalias-agentaliasroutingconfigurationlistitem-properties"></a>

`AgentVersion`  <a name="cfn-bedrock-agentalias-agentaliasroutingconfigurationlistitem-agentversion"></a>
The version of the agent with which the alias is associated.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$`  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::ApplicationInferenceProfile
<a name="aws-resource-bedrock-applicationinferenceprofile"></a>

Specifies an inference profile as a resource in a top-level template. Use the `ModelSource` field to specify the inference profile to copy into the resource. For more information about using inference profiles in Amazon Bedrock, see [Improve resilience with cross-region inference ](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html).

See the **Properties** section below for descriptions of both the required and optional properties.

## Syntax
<a name="aws-resource-bedrock-applicationinferenceprofile-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-applicationinferenceprofile-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::ApplicationInferenceProfile",
  "Properties" : {
      "[Description](#cfn-bedrock-applicationinferenceprofile-description)" : String,
      "[InferenceProfileName](#cfn-bedrock-applicationinferenceprofile-inferenceprofilename)" : String,
      "[ModelSource](#cfn-bedrock-applicationinferenceprofile-modelsource)" : InferenceProfileModelSource,
      "[Tags](#cfn-bedrock-applicationinferenceprofile-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-applicationinferenceprofile-syntax.yaml"></a>

```
Type: AWS::Bedrock::ApplicationInferenceProfile
Properties:
  [Description](#cfn-bedrock-applicationinferenceprofile-description): String
  [InferenceProfileName](#cfn-bedrock-applicationinferenceprofile-inferenceprofilename): String
  [ModelSource](#cfn-bedrock-applicationinferenceprofile-modelsource): 
    InferenceProfileModelSource
  [Tags](#cfn-bedrock-applicationinferenceprofile-tags): 
    - Tag
```

## Properties
<a name="aws-resource-bedrock-applicationinferenceprofile-properties"></a>

`Description`  <a name="cfn-bedrock-applicationinferenceprofile-description"></a>
The description of the inference profile.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z:.][ _-]?)+$`  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`InferenceProfileName`  <a name="cfn-bedrock-applicationinferenceprofile-inferenceprofilename"></a>
The name of the inference profile.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][ _-]?)+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ModelSource`  <a name="cfn-bedrock-applicationinferenceprofile-modelsource"></a>
Contains configurations for the inference profile to copy as the resource.  
*Required*: No  
*Type*: [InferenceProfileModelSource](aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-bedrock-applicationinferenceprofile-tags"></a>
A list of tags associated with the inference profile.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-applicationinferenceprofile-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-applicationinferenceprofile-return-values"></a>

### Ref
<a name="aws-resource-bedrock-applicationinferenceprofile-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the inference profile ID.

For example, `{ "Ref": "myInferenceProfile" }` could return the value `"IP12345678"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-applicationinferenceprofile-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-applicationinferenceprofile-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the inference profile was created.

`InferenceProfileArn`  <a name="InferenceProfileArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the inference profile.

`InferenceProfileId`  <a name="InferenceProfileId-fn::getatt"></a>
The unique identifier of the inference profile.

`InferenceProfileIdentifier`  <a name="InferenceProfileIdentifier-fn::getatt"></a>
The ID or Amazon Resource Name (ARN) of the inference profile.

`Models`  <a name="Models-fn::getatt"></a>
A list of information about each model in the inference profile.

`Status`  <a name="Status-fn::getatt"></a>
The status of the inference profile. `ACTIVE` means that the inference profile is ready to be used.

`Type`  <a name="Type-fn::getatt"></a>
The type of the inference profile. The following types are possible:  
+ `SYSTEM_DEFINED` – The inference profile is defined by Amazon Bedrock. You can route inference requests across regions with these inference profiles.
+ `APPLICATION` – The inference profile was created by a user. This type of inference profile can track metrics and costs when invoking the model in it. The inference profile may route requests to one or multiple regions.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the inference profile was last updated.

## Examples
<a name="aws-resource-bedrock-applicationinferenceprofile--examples"></a>

### Create an inference profile
<a name="aws-resource-bedrock-applicationinferenceprofile--examples--Create_an_inference_profile"></a>

The following example creates an inference profile for the Anthropic Claude 3.5 Sonnet model in the US West (Oregon) region:

#### YAML
<a name="aws-resource-bedrock-applicationinferenceprofile--examples--Create_an_inference_profile--yaml"></a>

```
AWSTemplateFormatVersion: '2010-09-09'
Description: Example Application Inference Profile
Resources:
  ExampleApplicationInferenceProfile:
    Type: AWS::Bedrock::ApplicationInferenceProfile
    Properties:
      ModelSource:
        CopyFrom: "arn:aws:bedrock:us-west-2::foundation-model/anthropic.claude-3-5-sonnet-20240620-v1:0"
      InferenceProfileName: Example Application Inference Profile Name
      Description: Description of ExampleApplicationInferenceProfile
```

#### JSON
<a name="aws-resource-bedrock-applicationinferenceprofile--examples--Create_an_inference_profile--json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Description": "Example Application Inference Profile",
    "Resources": {
        "ExampleApplicationInferenceProfile": {
            "Type": "AWS::Bedrock::ApplicationInferenceProfile",
            "Properties": {
                "ModelSource": {
                    "CopyFrom": "arn:aws:bedrock:us-west-2::foundation-model/anthropic.claude-3-5-sonnet-20240620-v1:0"
                },
                "InferenceProfileName": "Example Application Inference Profile Name",
                "Description": "Description of ExampleApplicationInferenceProfile"
            }
        }
    }
}
```

# AWS::Bedrock::ApplicationInferenceProfile InferenceProfileModel
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodel"></a>

Contains information about a model.

## Syntax
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodel-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodel-syntax.json"></a>

```
{
  "[ModelArn](#cfn-bedrock-applicationinferenceprofile-inferenceprofilemodel-modelarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodel-syntax.yaml"></a>

```
  [ModelArn](#cfn-bedrock-applicationinferenceprofile-inferenceprofilemodel-modelarn): String
```

## Properties
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodel-properties"></a>

`ModelArn`  <a name="cfn-bedrock-applicationinferenceprofile-inferenceprofilemodel-modelarn"></a>
The Amazon Resource Name (ARN) of the model.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::ApplicationInferenceProfile InferenceProfileModelSource
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource"></a>

Contains information about the model or system-defined inference profile that is the source for an inference profile..

## Syntax
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-syntax.json"></a>

```
{
  "[CopyFrom](#cfn-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-copyfrom)" : String
}
```

### YAML
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-syntax.yaml"></a>

```
  [CopyFrom](#cfn-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-copyfrom): String
```

## Properties
<a name="aws-properties-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-properties"></a>

`CopyFrom`  <a name="cfn-bedrock-applicationinferenceprofile-inferenceprofilemodelsource-copyfrom"></a>
The ARN of the model or system-defined inference profile that is the source for the inference profile.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|foundation-model)/[a-zA-Z0-9-:.]+$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::ApplicationInferenceProfile Tag
<a name="aws-properties-bedrock-applicationinferenceprofile-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-applicationinferenceprofile-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-applicationinferenceprofile-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-applicationinferenceprofile-tag-key)" : String,
  "[Value](#cfn-bedrock-applicationinferenceprofile-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-applicationinferenceprofile-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-applicationinferenceprofile-tag-key): String
  [Value](#cfn-bedrock-applicationinferenceprofile-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-applicationinferenceprofile-tag-properties"></a>

`Key`  <a name="cfn-bedrock-applicationinferenceprofile-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-applicationinferenceprofile-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicy
<a name="aws-resource-bedrock-automatedreasoningpolicy"></a>

Creates an Automated Reasoning policy for Amazon Bedrock Guardrails. Automated Reasoning policies use mathematical techniques to detect hallucinations, suggest corrections, and highlight unstated assumptions in the responses of your GenAI application.

To create a policy, you upload a source document that describes the rules that you're encoding. Automated Reasoning extracts important concepts from the source document that will become variables in the policy and infers policy rules.

To learn more about creating Automated Reasoning policies, see [Minimize AI hallucinations and deliver up to 99% verification accuracy with Automated Reasoning checks: Now available](https://aws.amazon.com/blogs/aws/minimize-ai-hallucinations-and-deliver-up-to-99-verification-accuracy-with-automated-reasoning-checks-now-available/) in the *AWS News Blog*.

## Syntax
<a name="aws-resource-bedrock-automatedreasoningpolicy-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-automatedreasoningpolicy-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::AutomatedReasoningPolicy",
  "Properties" : {
      "[Description](#cfn-bedrock-automatedreasoningpolicy-description)" : String,
      "[ForceDelete](#cfn-bedrock-automatedreasoningpolicy-forcedelete)" : Boolean,
      "[KmsKeyId](#cfn-bedrock-automatedreasoningpolicy-kmskeyid)" : String,
      "[Name](#cfn-bedrock-automatedreasoningpolicy-name)" : String,
      "[PolicyDefinition](#cfn-bedrock-automatedreasoningpolicy-policydefinition)" : PolicyDefinition,
      "[Tags](#cfn-bedrock-automatedreasoningpolicy-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-automatedreasoningpolicy-syntax.yaml"></a>

```
Type: AWS::Bedrock::AutomatedReasoningPolicy
Properties:
  [Description](#cfn-bedrock-automatedreasoningpolicy-description): String
  [ForceDelete](#cfn-bedrock-automatedreasoningpolicy-forcedelete): Boolean
  [KmsKeyId](#cfn-bedrock-automatedreasoningpolicy-kmskeyid): String
  [Name](#cfn-bedrock-automatedreasoningpolicy-name): String
  [PolicyDefinition](#cfn-bedrock-automatedreasoningpolicy-policydefinition): 
    PolicyDefinition
  [Tags](#cfn-bedrock-automatedreasoningpolicy-tags): 
    - Tag
```

## Properties
<a name="aws-resource-bedrock-automatedreasoningpolicy-properties"></a>

`Description`  <a name="cfn-bedrock-automatedreasoningpolicy-description"></a>
The description of the policy.  
*Required*: No  
*Type*: String  
*Pattern*: `^[\s\S]+$`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ForceDelete`  <a name="cfn-bedrock-automatedreasoningpolicy-forcedelete"></a>
Property description not available.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`KmsKeyId`  <a name="cfn-bedrock-automatedreasoningpolicy-kmskeyid"></a>
Property description not available.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:((key/[a-zA-Z0-9-]{36})|(alias/[a-zA-Z0-9-_/]+)))|([a-zA-Z0-9-]{36})|(alias/[a-zA-Z0-9-_/]+)$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Name`  <a name="cfn-bedrock-automatedreasoningpolicy-name"></a>
The name of the policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z-_ ]+$`  
*Minimum*: `1`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PolicyDefinition`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinition"></a>
The complete policy definition generated by the build workflow, containing all rules, variables, and custom types extracted from the source documents.  
*Required*: No  
*Type*: [PolicyDefinition](aws-properties-bedrock-automatedreasoningpolicy-policydefinition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-automatedreasoningpolicy-tags"></a>
The tags associated with the Automated Reasoning policy.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-automatedreasoningpolicy-tag.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-automatedreasoningpolicy-return-values"></a>

### Ref
<a name="aws-resource-bedrock-automatedreasoningpolicy-return-values-ref"></a>

Returns the policy ID.

### Fn::GetAtt
<a name="aws-resource-bedrock-automatedreasoningpolicy-return-values-fn--getatt"></a>

Returns the value of an attribute from a resource in the template.

#### 
<a name="aws-resource-bedrock-automatedreasoningpolicy-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The timestamp when the policy was created.

`DefinitionHash`  <a name="DefinitionHash-fn::getatt"></a>
A hash of the policy definition used to identify the version.

`KmsKeyArn`  <a name="KmsKeyArn-fn::getatt"></a>
Property description not available.

`PolicyArn`  <a name="PolicyArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the policy.

`PolicyId`  <a name="PolicyId-fn::getatt"></a>
The unique identifier of the policy.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The timestamp when the policy was last updated.

`Version`  <a name="Version-fn::getatt"></a>
The version of the policy.

# AWS::Bedrock::AutomatedReasoningPolicy PolicyDefinition
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinition"></a>

The complete policy definition containing rules, variables, and types.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinition-syntax.json"></a>

```
{
  "[Rules](#cfn-bedrock-automatedreasoningpolicy-policydefinition-rules)" : [ PolicyDefinitionRule, ... ],
  "[Types](#cfn-bedrock-automatedreasoningpolicy-policydefinition-types)" : [ PolicyDefinitionType, ... ],
  "[Variables](#cfn-bedrock-automatedreasoningpolicy-policydefinition-variables)" : [ PolicyDefinitionVariable, ... ],
  "[Version](#cfn-bedrock-automatedreasoningpolicy-policydefinition-version)" : String
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinition-syntax.yaml"></a>

```
  [Rules](#cfn-bedrock-automatedreasoningpolicy-policydefinition-rules): 
    - PolicyDefinitionRule
  [Types](#cfn-bedrock-automatedreasoningpolicy-policydefinition-types): 
    - PolicyDefinitionType
  [Variables](#cfn-bedrock-automatedreasoningpolicy-policydefinition-variables): 
    - PolicyDefinitionVariable
  [Version](#cfn-bedrock-automatedreasoningpolicy-policydefinition-version): String
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinition-properties"></a>

`Rules`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinition-rules"></a>
The collection of rules that define the policy logic.  
*Required*: No  
*Type*: Array of [PolicyDefinitionRule](aws-properties-bedrock-automatedreasoningpolicy-policydefinitionrule.md)  
*Maximum*: `500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinition-types"></a>
The custom types defined within the policy definition.  
*Required*: No  
*Type*: Array of [PolicyDefinitionType](aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontype.md)  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Variables`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinition-variables"></a>
The variables used within the policy definition.  
*Required*: No  
*Type*: Array of [PolicyDefinitionVariable](aws-properties-bedrock-automatedreasoningpolicy-policydefinitionvariable.md)  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Version`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinition-version"></a>
The version of the policy definition.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicy PolicyDefinitionRule
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionrule"></a>

A rule within the policy definition that defines logical constraints.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionrule-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionrule-syntax.json"></a>

```
{
  "[AlternateExpression](#cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-alternateexpression)" : String,
  "[Expression](#cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-expression)" : String,
  "[Id](#cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-id)" : String
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionrule-syntax.yaml"></a>

```
  [AlternateExpression](#cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-alternateexpression): String
  [Expression](#cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-expression): String
  [Id](#cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-id): String
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionrule-properties"></a>

`AlternateExpression`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-alternateexpression"></a>
An alternative expression for the policy rule.  
*Required*: No  
*Type*: String  
*Pattern*: `^[\s\S]+$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Expression`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-expression"></a>
The logical expression that defines the rule.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[\s\S]+$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Id`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitionrule-id"></a>
The unique identifier for the policy definition rule.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Z][0-9A-Z]{11}$`  
*Minimum*: `12`  
*Maximum*: `12`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicy PolicyDefinitionType
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontype"></a>

A custom type definition within the policy.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontype-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontype-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-description)" : String,
  "[Name](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-name)" : String,
  "[Values](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-values)" : [ PolicyDefinitionTypeValue, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontype-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-description): String
  [Name](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-name): String
  [Values](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-values): 
    - PolicyDefinitionTypeValue
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontype-properties"></a>

`Description`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-description"></a>
A description of the custom type defined in the policy.  
*Required*: No  
*Type*: String  
*Pattern*: `^[\s\S]+$`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-name"></a>
The name of a custom type defined in the policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Za-z][A-Za-z0-9_]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Values`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitiontype-values"></a>
The possible values for a custom type defined in the policy.  
*Required*: Yes  
*Type*: Array of [PolicyDefinitionTypeValue](aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontypevalue.md)  
*Minimum*: `1`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicy PolicyDefinitionTypeValue
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontypevalue"></a>

A value associated with a custom type in the policy definition.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-description)" : String,
  "[Value](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-description): String
  [Value](#cfn-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-value): String
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-properties"></a>

`Description`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-description"></a>
A description of the policy definition type value.  
*Required*: No  
*Type*: String  
*Pattern*: `^[\s\S]+$`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitiontypevalue-value"></a>
The value associated with a policy definition type.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Za-z][A-Za-z0-9_]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicy PolicyDefinitionVariable
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionvariable"></a>

A variable defined within the policy that can be used in rules.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionvariable-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionvariable-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-description)" : String,
  "[Name](#cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-name)" : String,
  "[Type](#cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionvariable-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-description): String
  [Name](#cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-name): String
  [Type](#cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-type): String
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicy-policydefinitionvariable-properties"></a>

`Description`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-description"></a>
A description of a variable defined in the policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[\s\S]+$`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-name"></a>
The name of a variable defined in the policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Za-z][A-Za-z0-9_]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-automatedreasoningpolicy-policydefinitionvariable-type"></a>
The data type of a variable defined in the policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Za-z][A-Za-z0-9_]+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicy Tag
<a name="aws-properties-bedrock-automatedreasoningpolicy-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicy-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicy-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-automatedreasoningpolicy-tag-key)" : String,
  "[Value](#cfn-bedrock-automatedreasoningpolicy-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicy-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-automatedreasoningpolicy-tag-key): String
  [Value](#cfn-bedrock-automatedreasoningpolicy-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicy-tag-properties"></a>

`Key`  <a name="cfn-bedrock-automatedreasoningpolicy-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-automatedreasoningpolicy-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::AutomatedReasoningPolicyVersion
<a name="aws-resource-bedrock-automatedreasoningpolicyversion"></a>

Creates a new version of an existing Automated Reasoning policy. This allows you to iterate on your policy rules while maintaining previous versions for rollback or comparison purposes.

## Syntax
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::AutomatedReasoningPolicyVersion",
  "Properties" : {
      "[LastUpdatedDefinitionHash](#cfn-bedrock-automatedreasoningpolicyversion-lastupdateddefinitionhash)" : String,
      "[PolicyArn](#cfn-bedrock-automatedreasoningpolicyversion-policyarn)" : String,
      "[Tags](#cfn-bedrock-automatedreasoningpolicyversion-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-syntax.yaml"></a>

```
Type: AWS::Bedrock::AutomatedReasoningPolicyVersion
Properties:
  [LastUpdatedDefinitionHash](#cfn-bedrock-automatedreasoningpolicyversion-lastupdateddefinitionhash): String
  [PolicyArn](#cfn-bedrock-automatedreasoningpolicyversion-policyarn): String
  [Tags](#cfn-bedrock-automatedreasoningpolicyversion-tags): 
    - Tag
```

## Properties
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-properties"></a>

`LastUpdatedDefinitionHash`  <a name="cfn-bedrock-automatedreasoningpolicyversion-lastupdateddefinitionhash"></a>
The hash of the policy definition that was last updated.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9a-z]{128}$`  
*Minimum*: `128`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PolicyArn`  <a name="cfn-bedrock-automatedreasoningpolicyversion-policyarn"></a>
The Amazon Resource Name (ARN) of the policy.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:automated-reasoning-policy\/[a-z0-9]{12}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-bedrock-automatedreasoningpolicyversion-tags"></a>
The tags associated with the Automated Reasoning policy version.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-automatedreasoningpolicyversion-tag.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-return-values"></a>

### Ref
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-return-values-ref"></a>

Returns the policy version ID.

### Fn::GetAtt
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-return-values-fn--getatt"></a>

Returns the value of an attribute from a resource in the template.

#### 
<a name="aws-resource-bedrock-automatedreasoningpolicyversion-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The timestamp when the policy version was created.

`DefinitionHash`  <a name="DefinitionHash-fn::getatt"></a>
A hash of the policy definition used to identify the version.

`Description`  <a name="Description-fn::getatt"></a>
The description of the policy version.

`Name`  <a name="Name-fn::getatt"></a>
The name of the policy version.

`PolicyId`  <a name="PolicyId-fn::getatt"></a>
The unique identifier of the policy.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The timestamp when the policy version was last updated.

`Version`  <a name="Version-fn::getatt"></a>
The version number of the policy version.

# AWS::Bedrock::AutomatedReasoningPolicyVersion Tag
<a name="aws-properties-bedrock-automatedreasoningpolicyversion-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-automatedreasoningpolicyversion-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-automatedreasoningpolicyversion-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-automatedreasoningpolicyversion-tag-key)" : String,
  "[Value](#cfn-bedrock-automatedreasoningpolicyversion-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-automatedreasoningpolicyversion-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-automatedreasoningpolicyversion-tag-key): String
  [Value](#cfn-bedrock-automatedreasoningpolicyversion-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-automatedreasoningpolicyversion-tag-properties"></a>

`Key`  <a name="cfn-bedrock-automatedreasoningpolicyversion-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Value`  <a name="cfn-bedrock-automatedreasoningpolicyversion-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::Blueprint
<a name="aws-resource-bedrock-blueprint"></a>

Details about a data automation blueprint.

## Syntax
<a name="aws-resource-bedrock-blueprint-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-blueprint-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::Blueprint",
  "Properties" : {
      "[BlueprintName](#cfn-bedrock-blueprint-blueprintname)" : String,
      "[KmsEncryptionContext](#cfn-bedrock-blueprint-kmsencryptioncontext)" : {Key: Value, ...},
      "[KmsKeyId](#cfn-bedrock-blueprint-kmskeyid)" : String,
      "[Schema](#cfn-bedrock-blueprint-schema)" : Json,
      "[Tags](#cfn-bedrock-blueprint-tags)" : [ Tag, ... ],
      "[Type](#cfn-bedrock-blueprint-type)" : String
    }
}
```

### YAML
<a name="aws-resource-bedrock-blueprint-syntax.yaml"></a>

```
Type: AWS::Bedrock::Blueprint
Properties:
  [BlueprintName](#cfn-bedrock-blueprint-blueprintname): String
  [KmsEncryptionContext](#cfn-bedrock-blueprint-kmsencryptioncontext): 
    Key: Value
  [KmsKeyId](#cfn-bedrock-blueprint-kmskeyid): String
  [Schema](#cfn-bedrock-blueprint-schema): Json
  [Tags](#cfn-bedrock-blueprint-tags): 
    - Tag
  [Type](#cfn-bedrock-blueprint-type): String
```

## Properties
<a name="aws-resource-bedrock-blueprint-properties"></a>

`BlueprintName`  <a name="cfn-bedrock-blueprint-blueprintname"></a>
The blueprint's name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9-_]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`KmsEncryptionContext`  <a name="cfn-bedrock-blueprint-kmsencryptioncontext"></a>
Name-value pairs to include as an encryption context.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KmsKeyId`  <a name="cfn-bedrock-blueprint-kmskeyid"></a>
The AWS KMS key to use for encryption.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Schema`  <a name="cfn-bedrock-blueprint-schema"></a>
The blueprint's schema.  
*Required*: Yes  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-blueprint-tags"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-blueprint-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-blueprint-type"></a>
The blueprint's type.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `DOCUMENT | IMAGE | AUDIO | VIDEO`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-bedrock-blueprint-return-values"></a>

### Ref
<a name="aws-resource-bedrock-blueprint-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-bedrock-blueprint-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-blueprint-return-values-fn--getatt-fn--getatt"></a>

`BlueprintArn`  <a name="BlueprintArn-fn::getatt"></a>
The blueprint's ARN.

`BlueprintStage`  <a name="BlueprintStage-fn::getatt"></a>
The blueprint's stage.

`CreationTime`  <a name="CreationTime-fn::getatt"></a>
When the blueprint was created.

`LastModifiedTime`  <a name="LastModifiedTime-fn::getatt"></a>
When the blueprint was last updated.

# AWS::Bedrock::Blueprint Tag
<a name="aws-properties-bedrock-blueprint-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-blueprint-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-blueprint-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-blueprint-tag-key)" : String,
  "[Value](#cfn-bedrock-blueprint-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-blueprint-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-blueprint-tag-key): String
  [Value](#cfn-bedrock-blueprint-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-blueprint-tag-properties"></a>

`Key`  <a name="cfn-bedrock-blueprint-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-blueprint-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationLibrary
<a name="aws-resource-bedrock-dataautomationlibrary"></a>

A data automation library.

## Syntax
<a name="aws-resource-bedrock-dataautomationlibrary-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-dataautomationlibrary-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::DataAutomationLibrary",
  "Properties" : {
      "[EncryptionConfiguration](#cfn-bedrock-dataautomationlibrary-encryptionconfiguration)" : EncryptionConfiguration,
      "[LibraryDescription](#cfn-bedrock-dataautomationlibrary-librarydescription)" : String,
      "[LibraryName](#cfn-bedrock-dataautomationlibrary-libraryname)" : String,
      "[Tags](#cfn-bedrock-dataautomationlibrary-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-dataautomationlibrary-syntax.yaml"></a>

```
Type: AWS::Bedrock::DataAutomationLibrary
Properties:
  [EncryptionConfiguration](#cfn-bedrock-dataautomationlibrary-encryptionconfiguration): 
    EncryptionConfiguration
  [LibraryDescription](#cfn-bedrock-dataautomationlibrary-librarydescription): String
  [LibraryName](#cfn-bedrock-dataautomationlibrary-libraryname): String
  [Tags](#cfn-bedrock-dataautomationlibrary-tags): 
    - Tag
```

## Properties
<a name="aws-resource-bedrock-dataautomationlibrary-properties"></a>

`EncryptionConfiguration`  <a name="cfn-bedrock-dataautomationlibrary-encryptionconfiguration"></a>
Encryption settings for an invocation.  
*Required*: No  
*Type*: [EncryptionConfiguration](aws-properties-bedrock-dataautomationlibrary-encryptionconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`LibraryDescription`  <a name="cfn-bedrock-dataautomationlibrary-librarydescription"></a>
The library's description.  
*Required*: No  
*Type*: String  
*Minimum*: `0`  
*Maximum*: `300`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LibraryName`  <a name="cfn-bedrock-dataautomationlibrary-libraryname"></a>
The library's name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9-_]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-bedrock-dataautomationlibrary-tags"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-dataautomationlibrary-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-dataautomationlibrary-return-values"></a>

### Ref
<a name="aws-resource-bedrock-dataautomationlibrary-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-bedrock-dataautomationlibrary-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-dataautomationlibrary-return-values-fn--getatt-fn--getatt"></a>

`CreationTime`  <a name="CreationTime-fn::getatt"></a>
When the library was created.

`EntityTypes`  <a name="EntityTypes-fn::getatt"></a>
The entity types supported by the library.

`LibraryArn`  <a name="LibraryArn-fn::getatt"></a>
The library's ARN.

`Status`  <a name="Status-fn::getatt"></a>
The library's status.

# AWS::Bedrock::DataAutomationLibrary EncryptionConfiguration
<a name="aws-properties-bedrock-dataautomationlibrary-encryptionconfiguration"></a>

Encryption settings for an invocation.

## Syntax
<a name="aws-properties-bedrock-dataautomationlibrary-encryptionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationlibrary-encryptionconfiguration-syntax.json"></a>

```
{
  "[KmsEncryptionContext](#cfn-bedrock-dataautomationlibrary-encryptionconfiguration-kmsencryptioncontext)" : {Key: Value, ...},
  "[KmsKeyId](#cfn-bedrock-dataautomationlibrary-encryptionconfiguration-kmskeyid)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationlibrary-encryptionconfiguration-syntax.yaml"></a>

```
  [KmsEncryptionContext](#cfn-bedrock-dataautomationlibrary-encryptionconfiguration-kmsencryptioncontext): 
    Key: Value
  [KmsKeyId](#cfn-bedrock-dataautomationlibrary-encryptionconfiguration-kmskeyid): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationlibrary-encryptionconfiguration-properties"></a>

`KmsEncryptionContext`  <a name="cfn-bedrock-dataautomationlibrary-encryptionconfiguration-kmsencryptioncontext"></a>
Name-value pairs to include as an encryption context.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.*\S.*$`  
*Minimum*: `1`  
*Maximum*: `2000`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`KmsKeyId`  <a name="cfn-bedrock-dataautomationlibrary-encryptionconfiguration-kmskeyid"></a>
A KMS key ID to use for encryption.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[A-Za-z0-9][A-Za-z0-9:_/+=,@.-]+$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataAutomationLibrary EntityTypeInfo
<a name="aws-properties-bedrock-dataautomationlibrary-entitytypeinfo"></a>

Information about an entity type.

## Syntax
<a name="aws-properties-bedrock-dataautomationlibrary-entitytypeinfo-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationlibrary-entitytypeinfo-syntax.json"></a>

```
{
  "[EntityMetadata](#cfn-bedrock-dataautomationlibrary-entitytypeinfo-entitymetadata)" : String,
  "[EntityType](#cfn-bedrock-dataautomationlibrary-entitytypeinfo-entitytype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationlibrary-entitytypeinfo-syntax.yaml"></a>

```
  [EntityMetadata](#cfn-bedrock-dataautomationlibrary-entitytypeinfo-entitymetadata): String
  [EntityType](#cfn-bedrock-dataautomationlibrary-entitytypeinfo-entitytype): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationlibrary-entitytypeinfo-properties"></a>

`EntityMetadata`  <a name="cfn-bedrock-dataautomationlibrary-entitytypeinfo-entitymetadata"></a>
Metadata about the entity type.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`EntityType`  <a name="cfn-bedrock-dataautomationlibrary-entitytypeinfo-entitytype"></a>
The entity type.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VOCABULARY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationLibrary Tag
<a name="aws-properties-bedrock-dataautomationlibrary-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-dataautomationlibrary-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationlibrary-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-dataautomationlibrary-tag-key)" : String,
  "[Value](#cfn-bedrock-dataautomationlibrary-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationlibrary-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-dataautomationlibrary-tag-key): String
  [Value](#cfn-bedrock-dataautomationlibrary-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationlibrary-tag-properties"></a>

`Key`  <a name="cfn-bedrock-dataautomationlibrary-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-dataautomationlibrary-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject
<a name="aws-resource-bedrock-dataautomationproject"></a>

A data automation project.

## Syntax
<a name="aws-resource-bedrock-dataautomationproject-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-dataautomationproject-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::DataAutomationProject",
  "Properties" : {
      "[CustomOutputConfiguration](#cfn-bedrock-dataautomationproject-customoutputconfiguration)" : CustomOutputConfiguration,
      "[KmsEncryptionContext](#cfn-bedrock-dataautomationproject-kmsencryptioncontext)" : {Key: Value, ...},
      "[KmsKeyId](#cfn-bedrock-dataautomationproject-kmskeyid)" : String,
      "[OverrideConfiguration](#cfn-bedrock-dataautomationproject-overrideconfiguration)" : OverrideConfiguration,
      "[ProjectDescription](#cfn-bedrock-dataautomationproject-projectdescription)" : String,
      "[ProjectName](#cfn-bedrock-dataautomationproject-projectname)" : String,
      "[ProjectType](#cfn-bedrock-dataautomationproject-projecttype)" : String,
      "[StandardOutputConfiguration](#cfn-bedrock-dataautomationproject-standardoutputconfiguration)" : StandardOutputConfiguration,
      "[Tags](#cfn-bedrock-dataautomationproject-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-dataautomationproject-syntax.yaml"></a>

```
Type: AWS::Bedrock::DataAutomationProject
Properties:
  [CustomOutputConfiguration](#cfn-bedrock-dataautomationproject-customoutputconfiguration): 
    CustomOutputConfiguration
  [KmsEncryptionContext](#cfn-bedrock-dataautomationproject-kmsencryptioncontext): 
    Key: Value
  [KmsKeyId](#cfn-bedrock-dataautomationproject-kmskeyid): String
  [OverrideConfiguration](#cfn-bedrock-dataautomationproject-overrideconfiguration): 
    OverrideConfiguration
  [ProjectDescription](#cfn-bedrock-dataautomationproject-projectdescription): String
  [ProjectName](#cfn-bedrock-dataautomationproject-projectname): String
  [ProjectType](#cfn-bedrock-dataautomationproject-projecttype): String
  [StandardOutputConfiguration](#cfn-bedrock-dataautomationproject-standardoutputconfiguration): 
    StandardOutputConfiguration
  [Tags](#cfn-bedrock-dataautomationproject-tags): 
    - Tag
```

## Properties
<a name="aws-resource-bedrock-dataautomationproject-properties"></a>

`CustomOutputConfiguration`  <a name="cfn-bedrock-dataautomationproject-customoutputconfiguration"></a>
Blueprints to apply to objects processed by the project.  
*Required*: No  
*Type*: [CustomOutputConfiguration](aws-properties-bedrock-dataautomationproject-customoutputconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KmsEncryptionContext`  <a name="cfn-bedrock-dataautomationproject-kmsencryptioncontext"></a>
The AWS KMS encryption context to use for encryption.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^.*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KmsKeyId`  <a name="cfn-bedrock-dataautomationproject-kmskeyid"></a>
The AWS KMS key to use for encryption.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OverrideConfiguration`  <a name="cfn-bedrock-dataautomationproject-overrideconfiguration"></a>
Additional settings for the project.  
*Required*: No  
*Type*: [OverrideConfiguration](aws-properties-bedrock-dataautomationproject-overrideconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProjectDescription`  <a name="cfn-bedrock-dataautomationproject-projectdescription"></a>
The project's description.  
*Required*: No  
*Type*: String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ProjectName`  <a name="cfn-bedrock-dataautomationproject-projectname"></a>
The project's name.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9-_]+$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ProjectType`  <a name="cfn-bedrock-dataautomationproject-projecttype"></a>
The type of bedrock data automation API that is compatible with this project.   
*Required*: No  
*Type*: String  
*Allowed values*: `ASYNC | SYNC`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`StandardOutputConfiguration`  <a name="cfn-bedrock-dataautomationproject-standardoutputconfiguration"></a>
The project's standard output configuration.  
*Required*: No  
*Type*: [StandardOutputConfiguration](aws-properties-bedrock-dataautomationproject-standardoutputconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-dataautomationproject-tags"></a>
Property description not available.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-dataautomationproject-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-dataautomationproject-return-values"></a>

### Ref
<a name="aws-resource-bedrock-dataautomationproject-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-bedrock-dataautomationproject-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-dataautomationproject-return-values-fn--getatt-fn--getatt"></a>

`CreationTime`  <a name="CreationTime-fn::getatt"></a>
When the project was created.

`LastModifiedTime`  <a name="LastModifiedTime-fn::getatt"></a>
When the project was last updated.

`ProjectArn`  <a name="ProjectArn-fn::getatt"></a>
The project's ARN.

`ProjectStage`  <a name="ProjectStage-fn::getatt"></a>
The project's stage.

`Status`  <a name="Status-fn::getatt"></a>
The project's status.

# AWS::Bedrock::DataAutomationProject AudioExtractionCategory
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategory"></a>

Settings for generating data from audio.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategory-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategory-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-audioextractioncategory-state)" : String,
  "[TypeConfiguration](#cfn-bedrock-dataautomationproject-audioextractioncategory-typeconfiguration)" : AudioExtractionCategoryTypeConfiguration,
  "[Types](#cfn-bedrock-dataautomationproject-audioextractioncategory-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategory-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-audioextractioncategory-state): String
  [TypeConfiguration](#cfn-bedrock-dataautomationproject-audioextractioncategory-typeconfiguration): 
    AudioExtractionCategoryTypeConfiguration
  [Types](#cfn-bedrock-dataautomationproject-audioextractioncategory-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategory-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-audioextractioncategory-state"></a>
Whether generating categorical data from audio is enabled.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TypeConfiguration`  <a name="cfn-bedrock-dataautomationproject-audioextractioncategory-typeconfiguration"></a>
This element contains information about extractions from different types. Used to enable speaker and channel labeling for transcripts.  
*Required*: No  
*Type*: [AudioExtractionCategoryTypeConfiguration](aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-dataautomationproject-audioextractioncategory-types"></a>
The types of data to generate.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject AudioExtractionCategoryTypeConfiguration
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration"></a>

Allows configuration of extractions for different types of data, such as transcript and content moderation.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-syntax.json"></a>

```
{
  "[Transcript](#cfn-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-transcript)" : TranscriptConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-syntax.yaml"></a>

```
  [Transcript](#cfn-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-transcript): 
    TranscriptConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-properties"></a>

`Transcript`  <a name="cfn-bedrock-dataautomationproject-audioextractioncategorytypeconfiguration-transcript"></a>
This element allows you to configure different extractions for your transcript data, such as speaker and channel labeling.  
*Required*: No  
*Type*: [TranscriptConfiguration](aws-properties-bedrock-dataautomationproject-transcriptconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject AudioLanguageConfiguration
<a name="aws-properties-bedrock-dataautomationproject-audiolanguageconfiguration"></a>

This allows you to set the input and output language of your audio. The input language can be set to any of the languages supported by Bedrock Data Automation. The output can either be set to english or whatever the dominant language is of the audio, determined by the language spoken for the most seconds.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audiolanguageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audiolanguageconfiguration-syntax.json"></a>

```
{
  "[GenerativeOutputLanguage](#cfn-bedrock-dataautomationproject-audiolanguageconfiguration-generativeoutputlanguage)" : String,
  "[IdentifyMultipleLanguages](#cfn-bedrock-dataautomationproject-audiolanguageconfiguration-identifymultiplelanguages)" : Boolean,
  "[InputLanguages](#cfn-bedrock-dataautomationproject-audiolanguageconfiguration-inputlanguages)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audiolanguageconfiguration-syntax.yaml"></a>

```
  [GenerativeOutputLanguage](#cfn-bedrock-dataautomationproject-audiolanguageconfiguration-generativeoutputlanguage): String
  [IdentifyMultipleLanguages](#cfn-bedrock-dataautomationproject-audiolanguageconfiguration-identifymultiplelanguages): Boolean
  [InputLanguages](#cfn-bedrock-dataautomationproject-audiolanguageconfiguration-inputlanguages): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audiolanguageconfiguration-properties"></a>

`GenerativeOutputLanguage`  <a name="cfn-bedrock-dataautomationproject-audiolanguageconfiguration-generativeoutputlanguage"></a>
The output language of your processing results. This can either be set to `EN` (English) or `DEFAULT` which will output the results in the dominant language of the audio. The dominant language is determined as the language in the audio, spoken the longest in the input audio.  
*Required*: No  
*Type*: String  
*Allowed values*: `DEFAULT | EN`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IdentifyMultipleLanguages`  <a name="cfn-bedrock-dataautomationproject-audiolanguageconfiguration-identifymultiplelanguages"></a>
The toggle determining if you want to detect multiple languages from your audio.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputLanguages`  <a name="cfn-bedrock-dataautomationproject-audiolanguageconfiguration-inputlanguages"></a>
The input language of your audio. This can be set to any of the currently supported languages via the language codes.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject AudioOverrideConfiguration
<a name="aws-properties-bedrock-dataautomationproject-audiooverrideconfiguration"></a>

Sets whether your project will process audio or not.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audiooverrideconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audiooverrideconfiguration-syntax.json"></a>

```
{
  "[LanguageConfiguration](#cfn-bedrock-dataautomationproject-audiooverrideconfiguration-languageconfiguration)" : AudioLanguageConfiguration,
  "[ModalityProcessing](#cfn-bedrock-dataautomationproject-audiooverrideconfiguration-modalityprocessing)" : ModalityProcessingConfiguration,
  "[SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-audiooverrideconfiguration-sensitivedataconfiguration)" : SensitiveDataConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audiooverrideconfiguration-syntax.yaml"></a>

```
  [LanguageConfiguration](#cfn-bedrock-dataautomationproject-audiooverrideconfiguration-languageconfiguration): 
    AudioLanguageConfiguration
  [ModalityProcessing](#cfn-bedrock-dataautomationproject-audiooverrideconfiguration-modalityprocessing): 
    ModalityProcessingConfiguration
  [SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-audiooverrideconfiguration-sensitivedataconfiguration): 
    SensitiveDataConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audiooverrideconfiguration-properties"></a>

`LanguageConfiguration`  <a name="cfn-bedrock-dataautomationproject-audiooverrideconfiguration-languageconfiguration"></a>
The output and input language configuration for your audio.  
*Required*: No  
*Type*: [AudioLanguageConfiguration](aws-properties-bedrock-dataautomationproject-audiolanguageconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModalityProcessing`  <a name="cfn-bedrock-dataautomationproject-audiooverrideconfiguration-modalityprocessing"></a>
Sets modality processing for audio files. All modalities are enabled by default.  
*Required*: No  
*Type*: [ModalityProcessingConfiguration](aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SensitiveDataConfiguration`  <a name="cfn-bedrock-dataautomationproject-audiooverrideconfiguration-sensitivedataconfiguration"></a>
Configuration for sensitive data detection and redaction for audio files.  
*Required*: No  
*Type*: [SensitiveDataConfiguration](aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject AudioStandardExtraction
<a name="aws-properties-bedrock-dataautomationproject-audiostandardextraction"></a>

Settings for generating data from audio.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audiostandardextraction-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audiostandardextraction-syntax.json"></a>

```
{
  "[Category](#cfn-bedrock-dataautomationproject-audiostandardextraction-category)" : AudioExtractionCategory
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audiostandardextraction-syntax.yaml"></a>

```
  [Category](#cfn-bedrock-dataautomationproject-audiostandardextraction-category): 
    AudioExtractionCategory
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audiostandardextraction-properties"></a>

`Category`  <a name="cfn-bedrock-dataautomationproject-audiostandardextraction-category"></a>
Settings for generating data from audio.  
*Required*: Yes  
*Type*: [AudioExtractionCategory](aws-properties-bedrock-dataautomationproject-audioextractioncategory.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject AudioStandardGenerativeField
<a name="aws-properties-bedrock-dataautomationproject-audiostandardgenerativefield"></a>

Settings for generating descriptions of audio.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audiostandardgenerativefield-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audiostandardgenerativefield-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-audiostandardgenerativefield-state)" : String,
  "[Types](#cfn-bedrock-dataautomationproject-audiostandardgenerativefield-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audiostandardgenerativefield-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-audiostandardgenerativefield-state): String
  [Types](#cfn-bedrock-dataautomationproject-audiostandardgenerativefield-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audiostandardgenerativefield-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-audiostandardgenerativefield-state"></a>
Whether generating descriptions is enabled for audio.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-dataautomationproject-audiostandardgenerativefield-types"></a>
The types of description to generate.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject AudioStandardOutputConfiguration
<a name="aws-properties-bedrock-dataautomationproject-audiostandardoutputconfiguration"></a>

Output settings for processing audio.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-audiostandardoutputconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-audiostandardoutputconfiguration-syntax.json"></a>

```
{
  "[Extraction](#cfn-bedrock-dataautomationproject-audiostandardoutputconfiguration-extraction)" : AudioStandardExtraction,
  "[GenerativeField](#cfn-bedrock-dataautomationproject-audiostandardoutputconfiguration-generativefield)" : AudioStandardGenerativeField
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-audiostandardoutputconfiguration-syntax.yaml"></a>

```
  [Extraction](#cfn-bedrock-dataautomationproject-audiostandardoutputconfiguration-extraction): 
    AudioStandardExtraction
  [GenerativeField](#cfn-bedrock-dataautomationproject-audiostandardoutputconfiguration-generativefield): 
    AudioStandardGenerativeField
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-audiostandardoutputconfiguration-properties"></a>

`Extraction`  <a name="cfn-bedrock-dataautomationproject-audiostandardoutputconfiguration-extraction"></a>
Settings for populating data fields that describe the audio.  
*Required*: No  
*Type*: [AudioStandardExtraction](aws-properties-bedrock-dataautomationproject-audiostandardextraction.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenerativeField`  <a name="cfn-bedrock-dataautomationproject-audiostandardoutputconfiguration-generativefield"></a>
Whether to generate descriptions of the data.  
*Required*: No  
*Type*: [AudioStandardGenerativeField](aws-properties-bedrock-dataautomationproject-audiostandardgenerativefield.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject BlueprintItem
<a name="aws-properties-bedrock-dataautomationproject-blueprintitem"></a>

An abbreviated summary of a blueprint.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-blueprintitem-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-blueprintitem-syntax.json"></a>

```
{
  "[BlueprintArn](#cfn-bedrock-dataautomationproject-blueprintitem-blueprintarn)" : String,
  "[BlueprintStage](#cfn-bedrock-dataautomationproject-blueprintitem-blueprintstage)" : String,
  "[BlueprintVersion](#cfn-bedrock-dataautomationproject-blueprintitem-blueprintversion)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-blueprintitem-syntax.yaml"></a>

```
  [BlueprintArn](#cfn-bedrock-dataautomationproject-blueprintitem-blueprintarn): String
  [BlueprintStage](#cfn-bedrock-dataautomationproject-blueprintitem-blueprintstage): String
  [BlueprintVersion](#cfn-bedrock-dataautomationproject-blueprintitem-blueprintversion): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-blueprintitem-properties"></a>

`BlueprintArn`  <a name="cfn-bedrock-dataautomationproject-blueprintitem-blueprintarn"></a>
The blueprint's ARN.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov|-iso|-iso-[a-z]):bedrock:[a-zA-Z0-9-]*:(aws|[0-9]{12}):blueprint/(bedrock-data-automation-public-[a-zA-Z0-9-_]{1,30}|[a-zA-Z0-9-]{12,36})$`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BlueprintStage`  <a name="cfn-bedrock-dataautomationproject-blueprintitem-blueprintstage"></a>
The blueprint's stage.  
*Required*: No  
*Type*: String  
*Allowed values*: `DEVELOPMENT | LIVE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BlueprintVersion`  <a name="cfn-bedrock-dataautomationproject-blueprintitem-blueprintversion"></a>
The blueprint's version.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ChannelLabelingConfiguration
<a name="aws-properties-bedrock-dataautomationproject-channellabelingconfiguration"></a>

Enables or disables channel labeling. Channel labeling, when enabled will assign a number to each audio channel, and indicate which channel is being used in each portion of the transcript. This appears in the response as "ch\$10" for the first channel, and "ch\$11" for the second.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-channellabelingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-channellabelingconfiguration-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-channellabelingconfiguration-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-channellabelingconfiguration-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-channellabelingconfiguration-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-channellabelingconfiguration-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-channellabelingconfiguration-state"></a>
State of channel labeling, either enabled or disabled.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject CustomOutputConfiguration
<a name="aws-properties-bedrock-dataautomationproject-customoutputconfiguration"></a>

Blueprints to apply to objects processed by the project.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-customoutputconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-customoutputconfiguration-syntax.json"></a>

```
{
  "[Blueprints](#cfn-bedrock-dataautomationproject-customoutputconfiguration-blueprints)" : [ BlueprintItem, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-customoutputconfiguration-syntax.yaml"></a>

```
  [Blueprints](#cfn-bedrock-dataautomationproject-customoutputconfiguration-blueprints): 
    - BlueprintItem
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-customoutputconfiguration-properties"></a>

`Blueprints`  <a name="cfn-bedrock-dataautomationproject-customoutputconfiguration-blueprints"></a>
A list of blueprints.  
*Required*: No  
*Type*: Array of [BlueprintItem](aws-properties-bedrock-dataautomationproject-blueprintitem.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentBoundingBox
<a name="aws-properties-bedrock-dataautomationproject-documentboundingbox"></a>

Bounding box settings for documents.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentboundingbox-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentboundingbox-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-documentboundingbox-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentboundingbox-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-documentboundingbox-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentboundingbox-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-documentboundingbox-state"></a>
Whether bounding boxes are enabled for documents.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentExtractionGranularity
<a name="aws-properties-bedrock-dataautomationproject-documentextractiongranularity"></a>

Granularity settings for documents.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentextractiongranularity-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentextractiongranularity-syntax.json"></a>

```
{
  "[Types](#cfn-bedrock-dataautomationproject-documentextractiongranularity-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentextractiongranularity-syntax.yaml"></a>

```
  [Types](#cfn-bedrock-dataautomationproject-documentextractiongranularity-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentextractiongranularity-properties"></a>

`Types`  <a name="cfn-bedrock-dataautomationproject-documentextractiongranularity-types"></a>
Granularity settings for documents.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentOutputAdditionalFileFormat
<a name="aws-properties-bedrock-dataautomationproject-documentoutputadditionalfileformat"></a>

Output settings for additional file formats.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentoutputadditionalfileformat-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentoutputadditionalfileformat-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-documentoutputadditionalfileformat-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentoutputadditionalfileformat-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-documentoutputadditionalfileformat-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentoutputadditionalfileformat-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-documentoutputadditionalfileformat-state"></a>
Whether additional file formats are enabled for a project.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentOutputFormat
<a name="aws-properties-bedrock-dataautomationproject-documentoutputformat"></a>

A document output format.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentoutputformat-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentoutputformat-syntax.json"></a>

```
{
  "[AdditionalFileFormat](#cfn-bedrock-dataautomationproject-documentoutputformat-additionalfileformat)" : DocumentOutputAdditionalFileFormat,
  "[TextFormat](#cfn-bedrock-dataautomationproject-documentoutputformat-textformat)" : DocumentOutputTextFormat
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentoutputformat-syntax.yaml"></a>

```
  [AdditionalFileFormat](#cfn-bedrock-dataautomationproject-documentoutputformat-additionalfileformat): 
    DocumentOutputAdditionalFileFormat
  [TextFormat](#cfn-bedrock-dataautomationproject-documentoutputformat-textformat): 
    DocumentOutputTextFormat
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentoutputformat-properties"></a>

`AdditionalFileFormat`  <a name="cfn-bedrock-dataautomationproject-documentoutputformat-additionalfileformat"></a>
Output settings for additional file formats.  
*Required*: Yes  
*Type*: [DocumentOutputAdditionalFileFormat](aws-properties-bedrock-dataautomationproject-documentoutputadditionalfileformat.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TextFormat`  <a name="cfn-bedrock-dataautomationproject-documentoutputformat-textformat"></a>
An output text format.  
*Required*: Yes  
*Type*: [DocumentOutputTextFormat](aws-properties-bedrock-dataautomationproject-documentoutputtextformat.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentOutputTextFormat
<a name="aws-properties-bedrock-dataautomationproject-documentoutputtextformat"></a>

An output text format.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentoutputtextformat-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentoutputtextformat-syntax.json"></a>

```
{
  "[Types](#cfn-bedrock-dataautomationproject-documentoutputtextformat-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentoutputtextformat-syntax.yaml"></a>

```
  [Types](#cfn-bedrock-dataautomationproject-documentoutputtextformat-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentoutputtextformat-properties"></a>

`Types`  <a name="cfn-bedrock-dataautomationproject-documentoutputtextformat-types"></a>
The types of output text to generate.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentOverrideConfiguration
<a name="aws-properties-bedrock-dataautomationproject-documentoverrideconfiguration"></a>

Additional settings for a project.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentoverrideconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentoverrideconfiguration-syntax.json"></a>

```
{
  "[ModalityProcessing](#cfn-bedrock-dataautomationproject-documentoverrideconfiguration-modalityprocessing)" : ModalityProcessingConfiguration,
  "[SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-documentoverrideconfiguration-sensitivedataconfiguration)" : SensitiveDataConfiguration,
  "[Splitter](#cfn-bedrock-dataautomationproject-documentoverrideconfiguration-splitter)" : SplitterConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentoverrideconfiguration-syntax.yaml"></a>

```
  [ModalityProcessing](#cfn-bedrock-dataautomationproject-documentoverrideconfiguration-modalityprocessing): 
    ModalityProcessingConfiguration
  [SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-documentoverrideconfiguration-sensitivedataconfiguration): 
    SensitiveDataConfiguration
  [Splitter](#cfn-bedrock-dataautomationproject-documentoverrideconfiguration-splitter): 
    SplitterConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentoverrideconfiguration-properties"></a>

`ModalityProcessing`  <a name="cfn-bedrock-dataautomationproject-documentoverrideconfiguration-modalityprocessing"></a>
Sets modality processing for document files. All modalities are enabled by default.  
*Required*: No  
*Type*: [ModalityProcessingConfiguration](aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SensitiveDataConfiguration`  <a name="cfn-bedrock-dataautomationproject-documentoverrideconfiguration-sensitivedataconfiguration"></a>
Configuration for sensitive data detection and redaction for document files.  
*Required*: No  
*Type*: [SensitiveDataConfiguration](aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Splitter`  <a name="cfn-bedrock-dataautomationproject-documentoverrideconfiguration-splitter"></a>
Whether document splitter is enabled for a project.  
*Required*: No  
*Type*: [SplitterConfiguration](aws-properties-bedrock-dataautomationproject-splitterconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentStandardExtraction
<a name="aws-properties-bedrock-dataautomationproject-documentstandardextraction"></a>

Settings for generating data from documents.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentstandardextraction-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentstandardextraction-syntax.json"></a>

```
{
  "[BoundingBox](#cfn-bedrock-dataautomationproject-documentstandardextraction-boundingbox)" : DocumentBoundingBox,
  "[Granularity](#cfn-bedrock-dataautomationproject-documentstandardextraction-granularity)" : DocumentExtractionGranularity
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentstandardextraction-syntax.yaml"></a>

```
  [BoundingBox](#cfn-bedrock-dataautomationproject-documentstandardextraction-boundingbox): 
    DocumentBoundingBox
  [Granularity](#cfn-bedrock-dataautomationproject-documentstandardextraction-granularity): 
    DocumentExtractionGranularity
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentstandardextraction-properties"></a>

`BoundingBox`  <a name="cfn-bedrock-dataautomationproject-documentstandardextraction-boundingbox"></a>
Whether to generate bounding boxes.  
*Required*: Yes  
*Type*: [DocumentBoundingBox](aws-properties-bedrock-dataautomationproject-documentboundingbox.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Granularity`  <a name="cfn-bedrock-dataautomationproject-documentstandardextraction-granularity"></a>
Which granularities to generate data for.  
*Required*: Yes  
*Type*: [DocumentExtractionGranularity](aws-properties-bedrock-dataautomationproject-documentextractiongranularity.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentStandardGenerativeField
<a name="aws-properties-bedrock-dataautomationproject-documentstandardgenerativefield"></a>

Settings for generating descriptions of documents.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentstandardgenerativefield-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentstandardgenerativefield-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-documentstandardgenerativefield-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentstandardgenerativefield-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-documentstandardgenerativefield-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentstandardgenerativefield-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-documentstandardgenerativefield-state"></a>
Whether generating descriptions is enabled for documents.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject DocumentStandardOutputConfiguration
<a name="aws-properties-bedrock-dataautomationproject-documentstandardoutputconfiguration"></a>

Output settings for processing documents.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-documentstandardoutputconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-documentstandardoutputconfiguration-syntax.json"></a>

```
{
  "[Extraction](#cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-extraction)" : DocumentStandardExtraction,
  "[GenerativeField](#cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-generativefield)" : DocumentStandardGenerativeField,
  "[OutputFormat](#cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-outputformat)" : DocumentOutputFormat
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-documentstandardoutputconfiguration-syntax.yaml"></a>

```
  [Extraction](#cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-extraction): 
    DocumentStandardExtraction
  [GenerativeField](#cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-generativefield): 
    DocumentStandardGenerativeField
  [OutputFormat](#cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-outputformat): 
    DocumentOutputFormat
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-documentstandardoutputconfiguration-properties"></a>

`Extraction`  <a name="cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-extraction"></a>
Settings for populating data fields that describe the document.  
*Required*: No  
*Type*: [DocumentStandardExtraction](aws-properties-bedrock-dataautomationproject-documentstandardextraction.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenerativeField`  <a name="cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-generativefield"></a>
Whether to generate descriptions.  
*Required*: No  
*Type*: [DocumentStandardGenerativeField](aws-properties-bedrock-dataautomationproject-documentstandardgenerativefield.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputFormat`  <a name="cfn-bedrock-dataautomationproject-documentstandardoutputconfiguration-outputformat"></a>
The output format to generate.  
*Required*: No  
*Type*: [DocumentOutputFormat](aws-properties-bedrock-dataautomationproject-documentoutputformat.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ImageBoundingBox
<a name="aws-properties-bedrock-dataautomationproject-imageboundingbox"></a>

Bounding box settings for a project.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-imageboundingbox-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-imageboundingbox-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-imageboundingbox-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-imageboundingbox-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-imageboundingbox-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-imageboundingbox-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-imageboundingbox-state"></a>
Bounding box settings for a project.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ImageExtractionCategory
<a name="aws-properties-bedrock-dataautomationproject-imageextractioncategory"></a>

Settings for generating categorical data from images.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-imageextractioncategory-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-imageextractioncategory-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-imageextractioncategory-state)" : String,
  "[Types](#cfn-bedrock-dataautomationproject-imageextractioncategory-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-imageextractioncategory-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-imageextractioncategory-state): String
  [Types](#cfn-bedrock-dataautomationproject-imageextractioncategory-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-imageextractioncategory-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-imageextractioncategory-state"></a>
Whether generating categorical data from images is enabled.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-dataautomationproject-imageextractioncategory-types"></a>
The types of data to generate.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ImageOverrideConfiguration
<a name="aws-properties-bedrock-dataautomationproject-imageoverrideconfiguration"></a>

Sets whether your project will process images or not.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-imageoverrideconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-imageoverrideconfiguration-syntax.json"></a>

```
{
  "[ModalityProcessing](#cfn-bedrock-dataautomationproject-imageoverrideconfiguration-modalityprocessing)" : ModalityProcessingConfiguration,
  "[SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-imageoverrideconfiguration-sensitivedataconfiguration)" : SensitiveDataConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-imageoverrideconfiguration-syntax.yaml"></a>

```
  [ModalityProcessing](#cfn-bedrock-dataautomationproject-imageoverrideconfiguration-modalityprocessing): 
    ModalityProcessingConfiguration
  [SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-imageoverrideconfiguration-sensitivedataconfiguration): 
    SensitiveDataConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-imageoverrideconfiguration-properties"></a>

`ModalityProcessing`  <a name="cfn-bedrock-dataautomationproject-imageoverrideconfiguration-modalityprocessing"></a>
Sets modality processing for image files. All modalities are enabled by default.  
*Required*: No  
*Type*: [ModalityProcessingConfiguration](aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SensitiveDataConfiguration`  <a name="cfn-bedrock-dataautomationproject-imageoverrideconfiguration-sensitivedataconfiguration"></a>
Configuration for sensitive data detection and redaction for image files.  
*Required*: No  
*Type*: [SensitiveDataConfiguration](aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ImageStandardExtraction
<a name="aws-properties-bedrock-dataautomationproject-imagestandardextraction"></a>

Settings for generating data from images.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-imagestandardextraction-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-imagestandardextraction-syntax.json"></a>

```
{
  "[BoundingBox](#cfn-bedrock-dataautomationproject-imagestandardextraction-boundingbox)" : ImageBoundingBox,
  "[Category](#cfn-bedrock-dataautomationproject-imagestandardextraction-category)" : ImageExtractionCategory
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-imagestandardextraction-syntax.yaml"></a>

```
  [BoundingBox](#cfn-bedrock-dataautomationproject-imagestandardextraction-boundingbox): 
    ImageBoundingBox
  [Category](#cfn-bedrock-dataautomationproject-imagestandardextraction-category): 
    ImageExtractionCategory
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-imagestandardextraction-properties"></a>

`BoundingBox`  <a name="cfn-bedrock-dataautomationproject-imagestandardextraction-boundingbox"></a>
Settings for generating bounding boxes.  
*Required*: Yes  
*Type*: [ImageBoundingBox](aws-properties-bedrock-dataautomationproject-imageboundingbox.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Category`  <a name="cfn-bedrock-dataautomationproject-imagestandardextraction-category"></a>
Settings for generating categorical data.  
*Required*: Yes  
*Type*: [ImageExtractionCategory](aws-properties-bedrock-dataautomationproject-imageextractioncategory.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ImageStandardGenerativeField
<a name="aws-properties-bedrock-dataautomationproject-imagestandardgenerativefield"></a>

Settings for generating descriptions of images.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-imagestandardgenerativefield-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-imagestandardgenerativefield-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-imagestandardgenerativefield-state)" : String,
  "[Types](#cfn-bedrock-dataautomationproject-imagestandardgenerativefield-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-imagestandardgenerativefield-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-imagestandardgenerativefield-state): String
  [Types](#cfn-bedrock-dataautomationproject-imagestandardgenerativefield-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-imagestandardgenerativefield-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-imagestandardgenerativefield-state"></a>
Whether generating descriptions is enabled for images.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-dataautomationproject-imagestandardgenerativefield-types"></a>
Settings for generating descriptions of images.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ImageStandardOutputConfiguration
<a name="aws-properties-bedrock-dataautomationproject-imagestandardoutputconfiguration"></a>

Output settings for processing images.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-imagestandardoutputconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-imagestandardoutputconfiguration-syntax.json"></a>

```
{
  "[Extraction](#cfn-bedrock-dataautomationproject-imagestandardoutputconfiguration-extraction)" : ImageStandardExtraction,
  "[GenerativeField](#cfn-bedrock-dataautomationproject-imagestandardoutputconfiguration-generativefield)" : ImageStandardGenerativeField
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-imagestandardoutputconfiguration-syntax.yaml"></a>

```
  [Extraction](#cfn-bedrock-dataautomationproject-imagestandardoutputconfiguration-extraction): 
    ImageStandardExtraction
  [GenerativeField](#cfn-bedrock-dataautomationproject-imagestandardoutputconfiguration-generativefield): 
    ImageStandardGenerativeField
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-imagestandardoutputconfiguration-properties"></a>

`Extraction`  <a name="cfn-bedrock-dataautomationproject-imagestandardoutputconfiguration-extraction"></a>
Settings for populating data fields that describe the image.  
*Required*: No  
*Type*: [ImageStandardExtraction](aws-properties-bedrock-dataautomationproject-imagestandardextraction.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenerativeField`  <a name="cfn-bedrock-dataautomationproject-imagestandardoutputconfiguration-generativefield"></a>
Whether to generate descriptions of the data.  
*Required*: No  
*Type*: [ImageStandardGenerativeField](aws-properties-bedrock-dataautomationproject-imagestandardgenerativefield.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ModalityProcessingConfiguration
<a name="aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration"></a>

This element is used to determine if the modality it is associated with is enabled or disabled. All modalities are enabled by default.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-modalityprocessingconfiguration-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-modalityprocessingconfiguration-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-modalityprocessingconfiguration-state"></a>
Stores the state of the modality for your project, set to either enabled or disabled  
*Required*: No  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject ModalityRoutingConfiguration
<a name="aws-properties-bedrock-dataautomationproject-modalityroutingconfiguration"></a>

This element allows you to set up where JPEG, PNG, MOV, and MP4 files get routed to for processing. JPEG routing applies to both "JPEG" and "JPG" file extensions.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-modalityroutingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-modalityroutingconfiguration-syntax.json"></a>

```
{
  "[jpeg](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-jpeg)" : String,
  "[mov](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-mov)" : String,
  "[mp4](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-mp4)" : String,
  "[png](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-png)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-modalityroutingconfiguration-syntax.yaml"></a>

```
  [jpeg](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-jpeg): String
  [mov](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-mov): String
  [mp4](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-mp4): String
  [png](#cfn-bedrock-dataautomationproject-modalityroutingconfiguration-png): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-modalityroutingconfiguration-properties"></a>

`jpeg`  <a name="cfn-bedrock-dataautomationproject-modalityroutingconfiguration-jpeg"></a>
Sets whether JPEG files are routed to document or image processing.  
*Required*: No  
*Type*: String  
*Allowed values*: `DOCUMENT | IMAGE | VIDEO | AUDIO`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`mov`  <a name="cfn-bedrock-dataautomationproject-modalityroutingconfiguration-mov"></a>
Sets whether MOV files are routed to audio or video processing.  
*Required*: No  
*Type*: String  
*Allowed values*: `DOCUMENT | IMAGE | VIDEO | AUDIO`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`mp4`  <a name="cfn-bedrock-dataautomationproject-modalityroutingconfiguration-mp4"></a>
Sets whether MP4 files are routed to audio or video processing.  
*Required*: No  
*Type*: String  
*Allowed values*: `DOCUMENT | IMAGE | VIDEO | AUDIO`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`png`  <a name="cfn-bedrock-dataautomationproject-modalityroutingconfiguration-png"></a>
Sets whether PNG files are routed to document or image processing.  
*Required*: No  
*Type*: String  
*Allowed values*: `DOCUMENT | IMAGE | VIDEO | AUDIO`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject OverrideConfiguration
<a name="aws-properties-bedrock-dataautomationproject-overrideconfiguration"></a>

Additional settings for a project.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-overrideconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-overrideconfiguration-syntax.json"></a>

```
{
  "[Audio](#cfn-bedrock-dataautomationproject-overrideconfiguration-audio)" : AudioOverrideConfiguration,
  "[Document](#cfn-bedrock-dataautomationproject-overrideconfiguration-document)" : DocumentOverrideConfiguration,
  "[Image](#cfn-bedrock-dataautomationproject-overrideconfiguration-image)" : ImageOverrideConfiguration,
  "[ModalityRouting](#cfn-bedrock-dataautomationproject-overrideconfiguration-modalityrouting)" : ModalityRoutingConfiguration,
  "[Video](#cfn-bedrock-dataautomationproject-overrideconfiguration-video)" : VideoOverrideConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-overrideconfiguration-syntax.yaml"></a>

```
  [Audio](#cfn-bedrock-dataautomationproject-overrideconfiguration-audio): 
    AudioOverrideConfiguration
  [Document](#cfn-bedrock-dataautomationproject-overrideconfiguration-document): 
    DocumentOverrideConfiguration
  [Image](#cfn-bedrock-dataautomationproject-overrideconfiguration-image): 
    ImageOverrideConfiguration
  [ModalityRouting](#cfn-bedrock-dataautomationproject-overrideconfiguration-modalityrouting): 
    ModalityRoutingConfiguration
  [Video](#cfn-bedrock-dataautomationproject-overrideconfiguration-video): 
    VideoOverrideConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-overrideconfiguration-properties"></a>

`Audio`  <a name="cfn-bedrock-dataautomationproject-overrideconfiguration-audio"></a>
This element declares whether your project will process audio files.  
*Required*: No  
*Type*: [AudioOverrideConfiguration](aws-properties-bedrock-dataautomationproject-audiooverrideconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Document`  <a name="cfn-bedrock-dataautomationproject-overrideconfiguration-document"></a>
Additional settings for a project.  
*Required*: No  
*Type*: [DocumentOverrideConfiguration](aws-properties-bedrock-dataautomationproject-documentoverrideconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Image`  <a name="cfn-bedrock-dataautomationproject-overrideconfiguration-image"></a>
This element declares whether your project will process image files.  
*Required*: No  
*Type*: [ImageOverrideConfiguration](aws-properties-bedrock-dataautomationproject-imageoverrideconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModalityRouting`  <a name="cfn-bedrock-dataautomationproject-overrideconfiguration-modalityrouting"></a>
Lets you set which modalities certain file types are processed as.  
*Required*: No  
*Type*: [ModalityRoutingConfiguration](aws-properties-bedrock-dataautomationproject-modalityroutingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Video`  <a name="cfn-bedrock-dataautomationproject-overrideconfiguration-video"></a>
This element declares whether your project will process video files.  
*Required*: No  
*Type*: [VideoOverrideConfiguration](aws-properties-bedrock-dataautomationproject-videooverrideconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject PIIEntitiesConfiguration
<a name="aws-properties-bedrock-dataautomationproject-piientitiesconfiguration"></a>

Configuration for detecting and redacting Personally Identifiable Information (PII) entities. Specify which PII entity types to detect and the redaction mask mode. If not provided, defaults to ALL entity types with ENTITY\$1TYPE redaction mask mode.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-piientitiesconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-piientitiesconfiguration-syntax.json"></a>

```
{
  "[PiiEntityTypes](#cfn-bedrock-dataautomationproject-piientitiesconfiguration-piientitytypes)" : [ String, ... ],
  "[RedactionMaskMode](#cfn-bedrock-dataautomationproject-piientitiesconfiguration-redactionmaskmode)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-piientitiesconfiguration-syntax.yaml"></a>

```
  [PiiEntityTypes](#cfn-bedrock-dataautomationproject-piientitiesconfiguration-piientitytypes): 
    - String
  [RedactionMaskMode](#cfn-bedrock-dataautomationproject-piientitiesconfiguration-redactionmaskmode): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-piientitiesconfiguration-properties"></a>

`PiiEntityTypes`  <a name="cfn-bedrock-dataautomationproject-piientitiesconfiguration-piientitytypes"></a>
List of PII entity types to detect/redact in the output. Choose from specific entity types (such as ADDRESS, NAME, EMAIL, PHONE, US\$1SOCIAL\$1SECURITY\$1NUMBER) or specify ALL to detect all supported PII types. If not specified, defaults to ALL.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RedactionMaskMode`  <a name="cfn-bedrock-dataautomationproject-piientitiesconfiguration-redactionmaskmode"></a>
Defines how detected PII entities are masked in redacted output files. Set to PII to replace all detected entities with a generic [PII] marker regardless of entity type. Set to ENTITY\$1TYPE to replace each detected entity with its specific type marker (for example, [NAME], [EMAIL], [ADDRESS]). This setting only applies when detectionMode is set to DETECTION\$1AND\$1REDACTION. If not specified, defaults to ENTITY\$1TYPE.  
*Required*: No  
*Type*: String  
*Allowed values*: `PII | ENTITY_TYPE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject SensitiveDataConfiguration
<a name="aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration"></a>

Configuration for detecting and redacting sensitive data in content. Use this to control whether sensitive data is detected only or both detected and redacted, specify the scope of detection (standard output, custom output, or both), and configure specific PII entity types to detect along with how they should be masked when redacted.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration-syntax.json"></a>

```
{
  "[DetectionMode](#cfn-bedrock-dataautomationproject-sensitivedataconfiguration-detectionmode)" : String,
  "[DetectionScope](#cfn-bedrock-dataautomationproject-sensitivedataconfiguration-detectionscope)" : [ String, ... ],
  "[PiiEntitiesConfiguration](#cfn-bedrock-dataautomationproject-sensitivedataconfiguration-piientitiesconfiguration)" : PIIEntitiesConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration-syntax.yaml"></a>

```
  [DetectionMode](#cfn-bedrock-dataautomationproject-sensitivedataconfiguration-detectionmode): String
  [DetectionScope](#cfn-bedrock-dataautomationproject-sensitivedataconfiguration-detectionscope): 
    - String
  [PiiEntitiesConfiguration](#cfn-bedrock-dataautomationproject-sensitivedataconfiguration-piientitiesconfiguration): 
    PIIEntitiesConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration-properties"></a>

`DetectionMode`  <a name="cfn-bedrock-dataautomationproject-sensitivedataconfiguration-detectionmode"></a>
Specifies the mode for handling sensitive data detection. Set to DETECTION to only identify sensitive data without modifying content - this produces one output file per detection scope containing detection information with original unredacted content. Set to DETECTION\$1AND\$1REDACTION to both identify and mask sensitive data - this produces two output files per detection scope: one unredacted file with detection information and one redacted file with masking applied to sensitive content. For example, if detectionScope includes both STANDARD and CUSTOM with DETECTION\$1AND\$1REDACTION mode, four output files will be generated (two for standard output and two for custom output).  
*Required*: No  
*Type*: String  
*Allowed values*: `DETECTION | DETECTION_AND_REDACTION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DetectionScope`  <a name="cfn-bedrock-dataautomationproject-sensitivedataconfiguration-detectionscope"></a>
Defines which BDA output types to apply sensitive data detection to. Specify STANDARD to detect sensitive data in standard output, CUSTOM to detect in custom output (blueprint-based extraction), or both to apply detection to both output types. If not specified, defaults to both STANDARD and CUSTOM. The number of output files generated depends on both the detection mode and the scopes selected - each scope specified will produce its own set of output files according to the detection mode configured.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PiiEntitiesConfiguration`  <a name="cfn-bedrock-dataautomationproject-sensitivedataconfiguration-piientitiesconfiguration"></a>
Configuration for detecting and redacting Personally Identifiable Information (PII) entities.   
*Required*: No  
*Type*: [PIIEntitiesConfiguration](aws-properties-bedrock-dataautomationproject-piientitiesconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject SpeakerLabelingConfiguration
<a name="aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration"></a>

Enables or disables speaker labeling. Speaker labeling, when enabled will assign a number to each speaker, and indicate which speaker is talking in each portion of the transcript. This appears in the response as "spk\$10" for the first speaker, "spk\$11" for the second, and so on for up to 30 speakers.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-speakerlabelingconfiguration-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-speakerlabelingconfiguration-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-speakerlabelingconfiguration-state"></a>
State of speaker labeling, either enabled or disabled.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject SplitterConfiguration
<a name="aws-properties-bedrock-dataautomationproject-splitterconfiguration"></a>

Document splitter settings. If a document is too large to be processed in one pass, the document splitter splits it into smaller documents.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-splitterconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-splitterconfiguration-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-splitterconfiguration-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-splitterconfiguration-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-splitterconfiguration-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-splitterconfiguration-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-splitterconfiguration-state"></a>
Whether document splitter is enabled for a project.  
*Required*: No  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject StandardOutputConfiguration
<a name="aws-properties-bedrock-dataautomationproject-standardoutputconfiguration"></a>

The project's standard output configuration.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-standardoutputconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-standardoutputconfiguration-syntax.json"></a>

```
{
  "[Audio](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-audio)" : AudioStandardOutputConfiguration,
  "[Document](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-document)" : DocumentStandardOutputConfiguration,
  "[Image](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-image)" : ImageStandardOutputConfiguration,
  "[Video](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-video)" : VideoStandardOutputConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-standardoutputconfiguration-syntax.yaml"></a>

```
  [Audio](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-audio): 
    AudioStandardOutputConfiguration
  [Document](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-document): 
    DocumentStandardOutputConfiguration
  [Image](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-image): 
    ImageStandardOutputConfiguration
  [Video](#cfn-bedrock-dataautomationproject-standardoutputconfiguration-video): 
    VideoStandardOutputConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-standardoutputconfiguration-properties"></a>

`Audio`  <a name="cfn-bedrock-dataautomationproject-standardoutputconfiguration-audio"></a>
Settings for processing audio.  
*Required*: No  
*Type*: [AudioStandardOutputConfiguration](aws-properties-bedrock-dataautomationproject-audiostandardoutputconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Document`  <a name="cfn-bedrock-dataautomationproject-standardoutputconfiguration-document"></a>
Settings for processing documents.  
*Required*: No  
*Type*: [DocumentStandardOutputConfiguration](aws-properties-bedrock-dataautomationproject-documentstandardoutputconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Image`  <a name="cfn-bedrock-dataautomationproject-standardoutputconfiguration-image"></a>
Settings for processing images.  
*Required*: No  
*Type*: [ImageStandardOutputConfiguration](aws-properties-bedrock-dataautomationproject-imagestandardoutputconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Video`  <a name="cfn-bedrock-dataautomationproject-standardoutputconfiguration-video"></a>
Settings for processing video.  
*Required*: No  
*Type*: [VideoStandardOutputConfiguration](aws-properties-bedrock-dataautomationproject-videostandardoutputconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject Tag
<a name="aws-properties-bedrock-dataautomationproject-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-dataautomationproject-tag-key)" : String,
  "[Value](#cfn-bedrock-dataautomationproject-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-dataautomationproject-tag-key): String
  [Value](#cfn-bedrock-dataautomationproject-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-tag-properties"></a>

`Key`  <a name="cfn-bedrock-dataautomationproject-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-dataautomationproject-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject TranscriptConfiguration
<a name="aws-properties-bedrock-dataautomationproject-transcriptconfiguration"></a>

Configuration for transcript options. This option allows you to enable speaker labeling and channel labeling.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-transcriptconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-transcriptconfiguration-syntax.json"></a>

```
{
  "[ChannelLabeling](#cfn-bedrock-dataautomationproject-transcriptconfiguration-channellabeling)" : ChannelLabelingConfiguration,
  "[SpeakerLabeling](#cfn-bedrock-dataautomationproject-transcriptconfiguration-speakerlabeling)" : SpeakerLabelingConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-transcriptconfiguration-syntax.yaml"></a>

```
  [ChannelLabeling](#cfn-bedrock-dataautomationproject-transcriptconfiguration-channellabeling): 
    ChannelLabelingConfiguration
  [SpeakerLabeling](#cfn-bedrock-dataautomationproject-transcriptconfiguration-speakerlabeling): 
    SpeakerLabelingConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-transcriptconfiguration-properties"></a>

`ChannelLabeling`  <a name="cfn-bedrock-dataautomationproject-transcriptconfiguration-channellabeling"></a>
Enables channel labeling. Each audio channel will be labeled with a number, and the transcript will indicate which channel is being used.  
*Required*: No  
*Type*: [ChannelLabelingConfiguration](aws-properties-bedrock-dataautomationproject-channellabelingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SpeakerLabeling`  <a name="cfn-bedrock-dataautomationproject-transcriptconfiguration-speakerlabeling"></a>
Enables speaker labeling. Each speaker within a transcript will recieve a number, and the transcript will note which speaker is talking.  
*Required*: No  
*Type*: [SpeakerLabelingConfiguration](aws-properties-bedrock-dataautomationproject-speakerlabelingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject VideoBoundingBox
<a name="aws-properties-bedrock-dataautomationproject-videoboundingbox"></a>

Bounding box settings for video.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-videoboundingbox-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-videoboundingbox-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-videoboundingbox-state)" : String
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-videoboundingbox-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-videoboundingbox-state): String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-videoboundingbox-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-videoboundingbox-state"></a>
Whether bounding boxes are enabled for video.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject VideoExtractionCategory
<a name="aws-properties-bedrock-dataautomationproject-videoextractioncategory"></a>

Settings for generating categorical data from video.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-videoextractioncategory-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-videoextractioncategory-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-videoextractioncategory-state)" : String,
  "[Types](#cfn-bedrock-dataautomationproject-videoextractioncategory-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-videoextractioncategory-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-videoextractioncategory-state): String
  [Types](#cfn-bedrock-dataautomationproject-videoextractioncategory-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-videoextractioncategory-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-videoextractioncategory-state"></a>
Whether generating categorical data from video is enabled.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-dataautomationproject-videoextractioncategory-types"></a>
The types of data to generate.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject VideoOverrideConfiguration
<a name="aws-properties-bedrock-dataautomationproject-videooverrideconfiguration"></a>

Sets whether your project will process videos or not.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-videooverrideconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-videooverrideconfiguration-syntax.json"></a>

```
{
  "[ModalityProcessing](#cfn-bedrock-dataautomationproject-videooverrideconfiguration-modalityprocessing)" : ModalityProcessingConfiguration,
  "[SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-videooverrideconfiguration-sensitivedataconfiguration)" : SensitiveDataConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-videooverrideconfiguration-syntax.yaml"></a>

```
  [ModalityProcessing](#cfn-bedrock-dataautomationproject-videooverrideconfiguration-modalityprocessing): 
    ModalityProcessingConfiguration
  [SensitiveDataConfiguration](#cfn-bedrock-dataautomationproject-videooverrideconfiguration-sensitivedataconfiguration): 
    SensitiveDataConfiguration
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-videooverrideconfiguration-properties"></a>

`ModalityProcessing`  <a name="cfn-bedrock-dataautomationproject-videooverrideconfiguration-modalityprocessing"></a>
Sets modality processing for video files. All modalities are enabled by default.  
*Required*: No  
*Type*: [ModalityProcessingConfiguration](aws-properties-bedrock-dataautomationproject-modalityprocessingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SensitiveDataConfiguration`  <a name="cfn-bedrock-dataautomationproject-videooverrideconfiguration-sensitivedataconfiguration"></a>
Configuration for sensitive data detection and redaction for video files.  
*Required*: No  
*Type*: [SensitiveDataConfiguration](aws-properties-bedrock-dataautomationproject-sensitivedataconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject VideoStandardExtraction
<a name="aws-properties-bedrock-dataautomationproject-videostandardextraction"></a>

Settings for generating data from video.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-videostandardextraction-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-videostandardextraction-syntax.json"></a>

```
{
  "[BoundingBox](#cfn-bedrock-dataautomationproject-videostandardextraction-boundingbox)" : VideoBoundingBox,
  "[Category](#cfn-bedrock-dataautomationproject-videostandardextraction-category)" : VideoExtractionCategory
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-videostandardextraction-syntax.yaml"></a>

```
  [BoundingBox](#cfn-bedrock-dataautomationproject-videostandardextraction-boundingbox): 
    VideoBoundingBox
  [Category](#cfn-bedrock-dataautomationproject-videostandardextraction-category): 
    VideoExtractionCategory
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-videostandardextraction-properties"></a>

`BoundingBox`  <a name="cfn-bedrock-dataautomationproject-videostandardextraction-boundingbox"></a>
Settings for generating bounding boxes.  
*Required*: Yes  
*Type*: [VideoBoundingBox](aws-properties-bedrock-dataautomationproject-videoboundingbox.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Category`  <a name="cfn-bedrock-dataautomationproject-videostandardextraction-category"></a>
Settings for generating categorical data.  
*Required*: Yes  
*Type*: [VideoExtractionCategory](aws-properties-bedrock-dataautomationproject-videoextractioncategory.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject VideoStandardGenerativeField
<a name="aws-properties-bedrock-dataautomationproject-videostandardgenerativefield"></a>

Settings for generating descriptions of video.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-videostandardgenerativefield-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-videostandardgenerativefield-syntax.json"></a>

```
{
  "[State](#cfn-bedrock-dataautomationproject-videostandardgenerativefield-state)" : String,
  "[Types](#cfn-bedrock-dataautomationproject-videostandardgenerativefield-types)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-videostandardgenerativefield-syntax.yaml"></a>

```
  [State](#cfn-bedrock-dataautomationproject-videostandardgenerativefield-state): String
  [Types](#cfn-bedrock-dataautomationproject-videostandardgenerativefield-types): 
    - String
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-videostandardgenerativefield-properties"></a>

`State`  <a name="cfn-bedrock-dataautomationproject-videostandardgenerativefield-state"></a>
Whether generating descriptions is enabled for video.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ENABLED | DISABLED`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Types`  <a name="cfn-bedrock-dataautomationproject-videostandardgenerativefield-types"></a>
The types of description to generate.  
*Required*: No  
*Type*: Array of String  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataAutomationProject VideoStandardOutputConfiguration
<a name="aws-properties-bedrock-dataautomationproject-videostandardoutputconfiguration"></a>

Output settings for processing video.

## Syntax
<a name="aws-properties-bedrock-dataautomationproject-videostandardoutputconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-dataautomationproject-videostandardoutputconfiguration-syntax.json"></a>

```
{
  "[Extraction](#cfn-bedrock-dataautomationproject-videostandardoutputconfiguration-extraction)" : VideoStandardExtraction,
  "[GenerativeField](#cfn-bedrock-dataautomationproject-videostandardoutputconfiguration-generativefield)" : VideoStandardGenerativeField
}
```

### YAML
<a name="aws-properties-bedrock-dataautomationproject-videostandardoutputconfiguration-syntax.yaml"></a>

```
  [Extraction](#cfn-bedrock-dataautomationproject-videostandardoutputconfiguration-extraction): 
    VideoStandardExtraction
  [GenerativeField](#cfn-bedrock-dataautomationproject-videostandardoutputconfiguration-generativefield): 
    VideoStandardGenerativeField
```

## Properties
<a name="aws-properties-bedrock-dataautomationproject-videostandardoutputconfiguration-properties"></a>

`Extraction`  <a name="cfn-bedrock-dataautomationproject-videostandardoutputconfiguration-extraction"></a>
Settings for populating data fields that describe the video.  
*Required*: No  
*Type*: [VideoStandardExtraction](aws-properties-bedrock-dataautomationproject-videostandardextraction.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenerativeField`  <a name="cfn-bedrock-dataautomationproject-videostandardoutputconfiguration-generativefield"></a>
Whether to generate descriptions of the video.  
*Required*: No  
*Type*: [VideoStandardGenerativeField](aws-properties-bedrock-dataautomationproject-videostandardgenerativefield.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource
<a name="aws-resource-bedrock-datasource"></a>

**Important**  
Properties with `__Update requires: Replacement__` can result in the creation of a new data source and deletion of the old one. This can happen if you also change the Name of the data source.

Specifies a data source as a resource in a top-level template. Minimally, you must specify the following properties:
+ Name – Specify a name for the data source.
+ KnowledgeBaseId – Specify the ID of the knowledge base for the data source to belong to.
+ DataSourceConfiguration – Specify information about the Amazon S3 bucket containing the data source. The following sub-properties are required:
  + Type – Specify the value `S3`.

For more information about setting up data sources in Amazon Bedrock, see [Set up a data source for your knowledge base](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-ds.html).

See the **Properties** section below for descriptions of both the required and optional properties.

## Syntax
<a name="aws-resource-bedrock-datasource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-datasource-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::DataSource",
  "Properties" : {
      "[DataDeletionPolicy](#cfn-bedrock-datasource-datadeletionpolicy)" : String,
      "[DataSourceConfiguration](#cfn-bedrock-datasource-datasourceconfiguration)" : DataSourceConfiguration,
      "[Description](#cfn-bedrock-datasource-description)" : String,
      "[KnowledgeBaseId](#cfn-bedrock-datasource-knowledgebaseid)" : String,
      "[Name](#cfn-bedrock-datasource-name)" : String,
      "[ServerSideEncryptionConfiguration](#cfn-bedrock-datasource-serversideencryptionconfiguration)" : ServerSideEncryptionConfiguration,
      "[VectorIngestionConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration)" : VectorIngestionConfiguration
    }
}
```

### YAML
<a name="aws-resource-bedrock-datasource-syntax.yaml"></a>

```
Type: AWS::Bedrock::DataSource
Properties:
  [DataDeletionPolicy](#cfn-bedrock-datasource-datadeletionpolicy): String
  [DataSourceConfiguration](#cfn-bedrock-datasource-datasourceconfiguration): 
    DataSourceConfiguration
  [Description](#cfn-bedrock-datasource-description): String
  [KnowledgeBaseId](#cfn-bedrock-datasource-knowledgebaseid): String
  [Name](#cfn-bedrock-datasource-name): String
  [ServerSideEncryptionConfiguration](#cfn-bedrock-datasource-serversideencryptionconfiguration): 
    ServerSideEncryptionConfiguration
  [VectorIngestionConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration): 
    VectorIngestionConfiguration
```

## Properties
<a name="aws-resource-bedrock-datasource-properties"></a>

`DataDeletionPolicy`  <a name="cfn-bedrock-datasource-datadeletionpolicy"></a>
The data deletion policy for the data source.  
*Required*: No  
*Type*: String  
*Allowed values*: `RETAIN | DELETE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DataSourceConfiguration`  <a name="cfn-bedrock-datasource-datasourceconfiguration"></a>
The connection configuration for the data source.  
*Required*: Yes  
*Type*: [DataSourceConfiguration](aws-properties-bedrock-datasource-datasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-datasource-description"></a>
The description of the data source.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBaseId`  <a name="cfn-bedrock-datasource-knowledgebaseid"></a>
The unique identifier of the knowledge base to which the data source belongs.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z]{10}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Name`  <a name="cfn-bedrock-datasource-name"></a>
The name of the data source.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ServerSideEncryptionConfiguration`  <a name="cfn-bedrock-datasource-serversideencryptionconfiguration"></a>
Contains details about the configuration of the server-side encryption.  
*Required*: No  
*Type*: [ServerSideEncryptionConfiguration](aws-properties-bedrock-datasource-serversideencryptionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`VectorIngestionConfiguration`  <a name="cfn-bedrock-datasource-vectoringestionconfiguration"></a>
Contains details about how to ingest the documents in the data source.  
*Required*: No  
*Type*: [VectorIngestionConfiguration](aws-properties-bedrock-datasource-vectoringestionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-datasource-return-values"></a>

### Ref
<a name="aws-resource-bedrock-datasource-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the knowledge base ID and the data source ID, separated by a pipe (`|`).

For example, `{ "Ref": "myDataSource" }` could return the value `"KB12345678|DS12345678"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-datasource-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-datasource-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the data source was created.

`DataSourceConfiguration.WebConfiguration.CrawlerConfiguration.UserAgentHeader`  <a name="DataSourceConfiguration.WebConfiguration.CrawlerConfiguration.UserAgentHeader-fn::getatt"></a>
Property description not available.

`DataSourceId`  <a name="DataSourceId-fn::getatt"></a>
The unique identifier of the data source.

`DataSourceStatus`  <a name="DataSourceStatus-fn::getatt"></a>
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.

`FailureReasons`  <a name="FailureReasons-fn::getatt"></a>
The detailed reasons on the failure to delete a data source.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the data source was last updated.

# AWS::Bedrock::DataSource BedrockDataAutomationConfiguration
<a name="aws-properties-bedrock-datasource-bedrockdataautomationconfiguration"></a>

Contains configurations for using Amazon Bedrock Data Automation as the parser for ingesting your data sources.

## Syntax
<a name="aws-properties-bedrock-datasource-bedrockdataautomationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-bedrockdataautomationconfiguration-syntax.json"></a>

```
{
  "[ParsingModality](#cfn-bedrock-datasource-bedrockdataautomationconfiguration-parsingmodality)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-bedrockdataautomationconfiguration-syntax.yaml"></a>

```
  [ParsingModality](#cfn-bedrock-datasource-bedrockdataautomationconfiguration-parsingmodality): String
```

## Properties
<a name="aws-properties-bedrock-datasource-bedrockdataautomationconfiguration-properties"></a>

`ParsingModality`  <a name="cfn-bedrock-datasource-bedrockdataautomationconfiguration-parsingmodality"></a>
Specifies whether to enable parsing of multimodal data, including both text and/or images.  
*Required*: No  
*Type*: String  
*Allowed values*: `MULTIMODAL`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource BedrockFoundationModelConfiguration
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelconfiguration-syntax.json"></a>

```
{
  "[ModelArn](#cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-modelarn)" : String,
  "[ParsingModality](#cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-parsingmodality)" : String,
  "[ParsingPrompt](#cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-parsingprompt)" : ParsingPrompt
}
```

### YAML
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelconfiguration-syntax.yaml"></a>

```
  [ModelArn](#cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-modelarn): String
  [ParsingModality](#cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-parsingmodality): String
  [ParsingPrompt](#cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-parsingprompt): 
    ParsingPrompt
```

## Properties
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelconfiguration-properties"></a>

`ModelArn`  <a name="cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-modelarn"></a>
The ARN of the foundation model to use for parsing.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-cn|-us-gov|-eusc|-iso(-[b-f])?)?:(bedrock):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ParsingModality`  <a name="cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-parsingmodality"></a>
Specifies whether to enable parsing of multimodal data, including both text and/or images.  
*Required*: No  
*Type*: String  
*Allowed values*: `MULTIMODAL`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ParsingPrompt`  <a name="cfn-bedrock-datasource-bedrockfoundationmodelconfiguration-parsingprompt"></a>
Instructions for interpreting the contents of a document.  
*Required*: No  
*Type*: [ParsingPrompt](aws-properties-bedrock-datasource-parsingprompt.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource BedrockFoundationModelContextEnrichmentConfiguration
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration"></a>

Context enrichment configuration is used to provide additional context to the RAG application using Amazon Bedrock foundation models.

## Syntax
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-syntax.json"></a>

```
{
  "[EnrichmentStrategyConfiguration](#cfn-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-enrichmentstrategyconfiguration)" : EnrichmentStrategyConfiguration,
  "[ModelArn](#cfn-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-modelarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-syntax.yaml"></a>

```
  [EnrichmentStrategyConfiguration](#cfn-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-enrichmentstrategyconfiguration): 
    EnrichmentStrategyConfiguration
  [ModelArn](#cfn-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-modelarn): String
```

## Properties
<a name="aws-properties-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-properties"></a>

`EnrichmentStrategyConfiguration`  <a name="cfn-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-enrichmentstrategyconfiguration"></a>
The enrichment stategy used to provide additional context. For example, Neptune GraphRAG uses Amazon Bedrock foundation models to perform chunk entity extraction.  
*Required*: Yes  
*Type*: [EnrichmentStrategyConfiguration](aws-properties-bedrock-datasource-enrichmentstrategyconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelArn`  <a name="cfn-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration-modelarn"></a>
The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-cn|-us-gov|-eusc|-iso(-[b-f])?)?:(bedrock):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource ChunkingConfiguration
<a name="aws-properties-bedrock-datasource-chunkingconfiguration"></a>

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.

## Syntax
<a name="aws-properties-bedrock-datasource-chunkingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-chunkingconfiguration-syntax.json"></a>

```
{
  "[ChunkingStrategy](#cfn-bedrock-datasource-chunkingconfiguration-chunkingstrategy)" : String,
  "[FixedSizeChunkingConfiguration](#cfn-bedrock-datasource-chunkingconfiguration-fixedsizechunkingconfiguration)" : FixedSizeChunkingConfiguration,
  "[HierarchicalChunkingConfiguration](#cfn-bedrock-datasource-chunkingconfiguration-hierarchicalchunkingconfiguration)" : HierarchicalChunkingConfiguration,
  "[SemanticChunkingConfiguration](#cfn-bedrock-datasource-chunkingconfiguration-semanticchunkingconfiguration)" : SemanticChunkingConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-chunkingconfiguration-syntax.yaml"></a>

```
  [ChunkingStrategy](#cfn-bedrock-datasource-chunkingconfiguration-chunkingstrategy): String
  [FixedSizeChunkingConfiguration](#cfn-bedrock-datasource-chunkingconfiguration-fixedsizechunkingconfiguration): 
    FixedSizeChunkingConfiguration
  [HierarchicalChunkingConfiguration](#cfn-bedrock-datasource-chunkingconfiguration-hierarchicalchunkingconfiguration): 
    HierarchicalChunkingConfiguration
  [SemanticChunkingConfiguration](#cfn-bedrock-datasource-chunkingconfiguration-semanticchunkingconfiguration): 
    SemanticChunkingConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-chunkingconfiguration-properties"></a>

`ChunkingStrategy`  <a name="cfn-bedrock-datasource-chunkingconfiguration-chunkingstrategy"></a>
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.
*Required*: Yes  
*Type*: String  
*Allowed values*: `FIXED_SIZE | NONE | HIERARCHICAL | SEMANTIC`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FixedSizeChunkingConfiguration`  <a name="cfn-bedrock-datasource-chunkingconfiguration-fixedsizechunkingconfiguration"></a>
Configurations for when you choose fixed-size chunking. If you set the `chunkingStrategy` as `NONE`, exclude this field.  
*Required*: No  
*Type*: [FixedSizeChunkingConfiguration](aws-properties-bedrock-datasource-fixedsizechunkingconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`HierarchicalChunkingConfiguration`  <a name="cfn-bedrock-datasource-chunkingconfiguration-hierarchicalchunkingconfiguration"></a>
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.  
*Required*: No  
*Type*: [HierarchicalChunkingConfiguration](aws-properties-bedrock-datasource-hierarchicalchunkingconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SemanticChunkingConfiguration`  <a name="cfn-bedrock-datasource-chunkingconfiguration-semanticchunkingconfiguration"></a>
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.  
*Required*: No  
*Type*: [SemanticChunkingConfiguration](aws-properties-bedrock-datasource-semanticchunkingconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource ConfluenceCrawlerConfiguration
<a name="aws-properties-bedrock-datasource-confluencecrawlerconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-confluencecrawlerconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-confluencecrawlerconfiguration-syntax.json"></a>

```
{
  "[FilterConfiguration](#cfn-bedrock-datasource-confluencecrawlerconfiguration-filterconfiguration)" : CrawlFilterConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-confluencecrawlerconfiguration-syntax.yaml"></a>

```
  [FilterConfiguration](#cfn-bedrock-datasource-confluencecrawlerconfiguration-filterconfiguration): 
    CrawlFilterConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-confluencecrawlerconfiguration-properties"></a>

`FilterConfiguration`  <a name="cfn-bedrock-datasource-confluencecrawlerconfiguration-filterconfiguration"></a>
The configuration of filtering the Confluence content. For example, configuring regular expression patterns to include or exclude certain content.  
*Required*: No  
*Type*: [CrawlFilterConfiguration](aws-properties-bedrock-datasource-crawlfilterconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource ConfluenceDataSourceConfiguration
<a name="aws-properties-bedrock-datasource-confluencedatasourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-confluencedatasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-confluencedatasourceconfiguration-syntax.json"></a>

```
{
  "[CrawlerConfiguration](#cfn-bedrock-datasource-confluencedatasourceconfiguration-crawlerconfiguration)" : ConfluenceCrawlerConfiguration,
  "[SourceConfiguration](#cfn-bedrock-datasource-confluencedatasourceconfiguration-sourceconfiguration)" : ConfluenceSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-confluencedatasourceconfiguration-syntax.yaml"></a>

```
  [CrawlerConfiguration](#cfn-bedrock-datasource-confluencedatasourceconfiguration-crawlerconfiguration): 
    ConfluenceCrawlerConfiguration
  [SourceConfiguration](#cfn-bedrock-datasource-confluencedatasourceconfiguration-sourceconfiguration): 
    ConfluenceSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-confluencedatasourceconfiguration-properties"></a>

`CrawlerConfiguration`  <a name="cfn-bedrock-datasource-confluencedatasourceconfiguration-crawlerconfiguration"></a>
The configuration of the Confluence content. For example, configuring specific types of Confluence content.  
*Required*: No  
*Type*: [ConfluenceCrawlerConfiguration](aws-properties-bedrock-datasource-confluencecrawlerconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceConfiguration`  <a name="cfn-bedrock-datasource-confluencedatasourceconfiguration-sourceconfiguration"></a>
The endpoint information to connect to your Confluence data source.  
*Required*: Yes  
*Type*: [ConfluenceSourceConfiguration](aws-properties-bedrock-datasource-confluencesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource ConfluenceSourceConfiguration
<a name="aws-properties-bedrock-datasource-confluencesourceconfiguration"></a>

The endpoint information to connect to your Confluence data source.

## Syntax
<a name="aws-properties-bedrock-datasource-confluencesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-confluencesourceconfiguration-syntax.json"></a>

```
{
  "[AuthType](#cfn-bedrock-datasource-confluencesourceconfiguration-authtype)" : String,
  "[CredentialsSecretArn](#cfn-bedrock-datasource-confluencesourceconfiguration-credentialssecretarn)" : String,
  "[HostType](#cfn-bedrock-datasource-confluencesourceconfiguration-hosttype)" : String,
  "[HostUrl](#cfn-bedrock-datasource-confluencesourceconfiguration-hosturl)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-confluencesourceconfiguration-syntax.yaml"></a>

```
  [AuthType](#cfn-bedrock-datasource-confluencesourceconfiguration-authtype): String
  [CredentialsSecretArn](#cfn-bedrock-datasource-confluencesourceconfiguration-credentialssecretarn): String
  [HostType](#cfn-bedrock-datasource-confluencesourceconfiguration-hosttype): String
  [HostUrl](#cfn-bedrock-datasource-confluencesourceconfiguration-hosturl): String
```

## Properties
<a name="aws-properties-bedrock-datasource-confluencesourceconfiguration-properties"></a>

`AuthType`  <a name="cfn-bedrock-datasource-confluencesourceconfiguration-authtype"></a>
The supported authentication type to authenticate and connect to your Confluence instance.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BASIC | OAUTH2_CLIENT_CREDENTIALS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CredentialsSecretArn`  <a name="cfn-bedrock-datasource-confluencesourceconfiguration-credentialssecretarn"></a>
The Amazon Resource Name of an AWS Secrets Manager secret that stores your authentication credentials for your Confluence instance URL. For more information on the key-value pairs that must be included in your secret, depending on your authentication type, see [Confluence connection configuration](https://docs.aws.amazon.com/bedrock/latest/userguide/confluence-data-source-connector.html#configuration-confluence-connector).  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HostType`  <a name="cfn-bedrock-datasource-confluencesourceconfiguration-hosttype"></a>
The supported host type, whether online/cloud or server/on-premises.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SAAS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HostUrl`  <a name="cfn-bedrock-datasource-confluencesourceconfiguration-hosturl"></a>
The Confluence host URL or instance URL.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^https://[A-Za-z0-9][^\s]*$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource ContextEnrichmentConfiguration
<a name="aws-properties-bedrock-datasource-contextenrichmentconfiguration"></a>

Context enrichment configuration is used to provide additional context to the RAG application.

## Syntax
<a name="aws-properties-bedrock-datasource-contextenrichmentconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-contextenrichmentconfiguration-syntax.json"></a>

```
{
  "[BedrockFoundationModelConfiguration](#cfn-bedrock-datasource-contextenrichmentconfiguration-bedrockfoundationmodelconfiguration)" : BedrockFoundationModelContextEnrichmentConfiguration,
  "[Type](#cfn-bedrock-datasource-contextenrichmentconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-contextenrichmentconfiguration-syntax.yaml"></a>

```
  [BedrockFoundationModelConfiguration](#cfn-bedrock-datasource-contextenrichmentconfiguration-bedrockfoundationmodelconfiguration): 
    BedrockFoundationModelContextEnrichmentConfiguration
  [Type](#cfn-bedrock-datasource-contextenrichmentconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-datasource-contextenrichmentconfiguration-properties"></a>

`BedrockFoundationModelConfiguration`  <a name="cfn-bedrock-datasource-contextenrichmentconfiguration-bedrockfoundationmodelconfiguration"></a>
The configuration of the Amazon Bedrock foundation model used for context enrichment.  
*Required*: No  
*Type*: [BedrockFoundationModelContextEnrichmentConfiguration](aws-properties-bedrock-datasource-bedrockfoundationmodelcontextenrichmentconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-datasource-contextenrichmentconfiguration-type"></a>
The method used for context enrichment. It must be Amazon Bedrock foundation models.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BEDROCK_FOUNDATION_MODEL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource CrawlFilterConfiguration
<a name="aws-properties-bedrock-datasource-crawlfilterconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-crawlfilterconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-crawlfilterconfiguration-syntax.json"></a>

```
{
  "[PatternObjectFilter](#cfn-bedrock-datasource-crawlfilterconfiguration-patternobjectfilter)" : PatternObjectFilterConfiguration,
  "[Type](#cfn-bedrock-datasource-crawlfilterconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-crawlfilterconfiguration-syntax.yaml"></a>

```
  [PatternObjectFilter](#cfn-bedrock-datasource-crawlfilterconfiguration-patternobjectfilter): 
    PatternObjectFilterConfiguration
  [Type](#cfn-bedrock-datasource-crawlfilterconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-datasource-crawlfilterconfiguration-properties"></a>

`PatternObjectFilter`  <a name="cfn-bedrock-datasource-crawlfilterconfiguration-patternobjectfilter"></a>
The configuration of filtering certain objects or content types of the data source.  
*Required*: No  
*Type*: [PatternObjectFilterConfiguration](aws-properties-bedrock-datasource-patternobjectfilterconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-datasource-crawlfilterconfiguration-type"></a>
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.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `PATTERN`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource CustomTransformationConfiguration
<a name="aws-properties-bedrock-datasource-customtransformationconfiguration"></a>

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. 

## Syntax
<a name="aws-properties-bedrock-datasource-customtransformationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-customtransformationconfiguration-syntax.json"></a>

```
{
  "[IntermediateStorage](#cfn-bedrock-datasource-customtransformationconfiguration-intermediatestorage)" : IntermediateStorage,
  "[Transformations](#cfn-bedrock-datasource-customtransformationconfiguration-transformations)" : [ Transformation, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-datasource-customtransformationconfiguration-syntax.yaml"></a>

```
  [IntermediateStorage](#cfn-bedrock-datasource-customtransformationconfiguration-intermediatestorage): 
    IntermediateStorage
  [Transformations](#cfn-bedrock-datasource-customtransformationconfiguration-transformations): 
    - Transformation
```

## Properties
<a name="aws-properties-bedrock-datasource-customtransformationconfiguration-properties"></a>

`IntermediateStorage`  <a name="cfn-bedrock-datasource-customtransformationconfiguration-intermediatestorage"></a>
An S3 bucket path for input and output objects.  
*Required*: Yes  
*Type*: [IntermediateStorage](aws-properties-bedrock-datasource-intermediatestorage.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Transformations`  <a name="cfn-bedrock-datasource-customtransformationconfiguration-transformations"></a>
A Lambda function that processes documents.  
*Required*: Yes  
*Type*: Array of [Transformation](aws-properties-bedrock-datasource-transformation.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource DataSourceConfiguration
<a name="aws-properties-bedrock-datasource-datasourceconfiguration"></a>

The connection configuration for the data source.

## Syntax
<a name="aws-properties-bedrock-datasource-datasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-datasourceconfiguration-syntax.json"></a>

```
{
  "[ConfluenceConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-confluenceconfiguration)" : ConfluenceDataSourceConfiguration,
  "[S3Configuration](#cfn-bedrock-datasource-datasourceconfiguration-s3configuration)" : S3DataSourceConfiguration,
  "[SalesforceConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-salesforceconfiguration)" : SalesforceDataSourceConfiguration,
  "[SharePointConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-sharepointconfiguration)" : SharePointDataSourceConfiguration,
  "[Type](#cfn-bedrock-datasource-datasourceconfiguration-type)" : String,
  "[WebConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-webconfiguration)" : WebDataSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-datasourceconfiguration-syntax.yaml"></a>

```
  [ConfluenceConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-confluenceconfiguration): 
    ConfluenceDataSourceConfiguration
  [S3Configuration](#cfn-bedrock-datasource-datasourceconfiguration-s3configuration): 
    S3DataSourceConfiguration
  [SalesforceConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-salesforceconfiguration): 
    SalesforceDataSourceConfiguration
  [SharePointConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-sharepointconfiguration): 
    SharePointDataSourceConfiguration
  [Type](#cfn-bedrock-datasource-datasourceconfiguration-type): String
  [WebConfiguration](#cfn-bedrock-datasource-datasourceconfiguration-webconfiguration): 
    WebDataSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-datasourceconfiguration-properties"></a>

`ConfluenceConfiguration`  <a name="cfn-bedrock-datasource-datasourceconfiguration-confluenceconfiguration"></a>
The configuration information to connect to Confluence as your data source.  
Confluence data source connector is in preview release and is subject to change.
*Required*: No  
*Type*: [ConfluenceDataSourceConfiguration](aws-properties-bedrock-datasource-confluencedatasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`S3Configuration`  <a name="cfn-bedrock-datasource-datasourceconfiguration-s3configuration"></a>
The configuration information to connect to Amazon S3 as your data source.  
*Required*: No  
*Type*: [S3DataSourceConfiguration](aws-properties-bedrock-datasource-s3datasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SalesforceConfiguration`  <a name="cfn-bedrock-datasource-datasourceconfiguration-salesforceconfiguration"></a>
The configuration information to connect to Salesforce as your data source.  
Salesforce data source connector is in preview release and is subject to change.
*Required*: No  
*Type*: [SalesforceDataSourceConfiguration](aws-properties-bedrock-datasource-salesforcedatasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SharePointConfiguration`  <a name="cfn-bedrock-datasource-datasourceconfiguration-sharepointconfiguration"></a>
The configuration information to connect to SharePoint as your data source.  
SharePoint data source connector is in preview release and is subject to change.
*Required*: No  
*Type*: [SharePointDataSourceConfiguration](aws-properties-bedrock-datasource-sharepointdatasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-datasource-datasourceconfiguration-type"></a>
The type of data source.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `S3 | CONFLUENCE | SALESFORCE | SHAREPOINT | WEB | CUSTOM | REDSHIFT_METADATA`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`WebConfiguration`  <a name="cfn-bedrock-datasource-datasourceconfiguration-webconfiguration"></a>
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.
*Required*: No  
*Type*: [WebDataSourceConfiguration](aws-properties-bedrock-datasource-webdatasourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource EnrichmentStrategyConfiguration
<a name="aws-properties-bedrock-datasource-enrichmentstrategyconfiguration"></a>

The strategy used for performing context enrichment.

## Syntax
<a name="aws-properties-bedrock-datasource-enrichmentstrategyconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-enrichmentstrategyconfiguration-syntax.json"></a>

```
{
  "[Method](#cfn-bedrock-datasource-enrichmentstrategyconfiguration-method)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-enrichmentstrategyconfiguration-syntax.yaml"></a>

```
  [Method](#cfn-bedrock-datasource-enrichmentstrategyconfiguration-method): String
```

## Properties
<a name="aws-properties-bedrock-datasource-enrichmentstrategyconfiguration-properties"></a>

`Method`  <a name="cfn-bedrock-datasource-enrichmentstrategyconfiguration-method"></a>
The method used for the context enrichment strategy.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `CHUNK_ENTITY_EXTRACTION`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource FixedSizeChunkingConfiguration
<a name="aws-properties-bedrock-datasource-fixedsizechunkingconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-fixedsizechunkingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-fixedsizechunkingconfiguration-syntax.json"></a>

```
{
  "[MaxTokens](#cfn-bedrock-datasource-fixedsizechunkingconfiguration-maxtokens)" : Integer,
  "[OverlapPercentage](#cfn-bedrock-datasource-fixedsizechunkingconfiguration-overlappercentage)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-datasource-fixedsizechunkingconfiguration-syntax.yaml"></a>

```
  [MaxTokens](#cfn-bedrock-datasource-fixedsizechunkingconfiguration-maxtokens): Integer
  [OverlapPercentage](#cfn-bedrock-datasource-fixedsizechunkingconfiguration-overlappercentage): Integer
```

## Properties
<a name="aws-properties-bedrock-datasource-fixedsizechunkingconfiguration-properties"></a>

`MaxTokens`  <a name="cfn-bedrock-datasource-fixedsizechunkingconfiguration-maxtokens"></a>
The maximum number of tokens to include in a chunk.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`OverlapPercentage`  <a name="cfn-bedrock-datasource-fixedsizechunkingconfiguration-overlappercentage"></a>
The percentage of overlap between adjacent chunks of a data source.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `99`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource HierarchicalChunkingConfiguration
<a name="aws-properties-bedrock-datasource-hierarchicalchunkingconfiguration"></a>

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.

## Syntax
<a name="aws-properties-bedrock-datasource-hierarchicalchunkingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-hierarchicalchunkingconfiguration-syntax.json"></a>

```
{
  "[LevelConfigurations](#cfn-bedrock-datasource-hierarchicalchunkingconfiguration-levelconfigurations)" : [ HierarchicalChunkingLevelConfiguration, ... ],
  "[OverlapTokens](#cfn-bedrock-datasource-hierarchicalchunkingconfiguration-overlaptokens)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-datasource-hierarchicalchunkingconfiguration-syntax.yaml"></a>

```
  [LevelConfigurations](#cfn-bedrock-datasource-hierarchicalchunkingconfiguration-levelconfigurations): 
    - HierarchicalChunkingLevelConfiguration
  [OverlapTokens](#cfn-bedrock-datasource-hierarchicalchunkingconfiguration-overlaptokens): Integer
```

## Properties
<a name="aws-properties-bedrock-datasource-hierarchicalchunkingconfiguration-properties"></a>

`LevelConfigurations`  <a name="cfn-bedrock-datasource-hierarchicalchunkingconfiguration-levelconfigurations"></a>
Token settings for each layer.  
*Required*: Yes  
*Type*: Array of [HierarchicalChunkingLevelConfiguration](aws-properties-bedrock-datasource-hierarchicalchunkinglevelconfiguration.md)  
*Minimum*: `2`  
*Maximum*: `2`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`OverlapTokens`  <a name="cfn-bedrock-datasource-hierarchicalchunkingconfiguration-overlaptokens"></a>
The number of tokens to repeat across chunks in the same layer.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource HierarchicalChunkingLevelConfiguration
<a name="aws-properties-bedrock-datasource-hierarchicalchunkinglevelconfiguration"></a>

Token settings for a layer in a hierarchical chunking configuration.

## Syntax
<a name="aws-properties-bedrock-datasource-hierarchicalchunkinglevelconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-hierarchicalchunkinglevelconfiguration-syntax.json"></a>

```
{
  "[MaxTokens](#cfn-bedrock-datasource-hierarchicalchunkinglevelconfiguration-maxtokens)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-datasource-hierarchicalchunkinglevelconfiguration-syntax.yaml"></a>

```
  [MaxTokens](#cfn-bedrock-datasource-hierarchicalchunkinglevelconfiguration-maxtokens): Integer
```

## Properties
<a name="aws-properties-bedrock-datasource-hierarchicalchunkinglevelconfiguration-properties"></a>

`MaxTokens`  <a name="cfn-bedrock-datasource-hierarchicalchunkinglevelconfiguration-maxtokens"></a>
The maximum number of tokens that a chunk can contain in this layer.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `8192`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource IntermediateStorage
<a name="aws-properties-bedrock-datasource-intermediatestorage"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-intermediatestorage-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-intermediatestorage-syntax.json"></a>

```
{
  "[S3Location](#cfn-bedrock-datasource-intermediatestorage-s3location)" : S3Location
}
```

### YAML
<a name="aws-properties-bedrock-datasource-intermediatestorage-syntax.yaml"></a>

```
  [S3Location](#cfn-bedrock-datasource-intermediatestorage-s3location): 
    S3Location
```

## Properties
<a name="aws-properties-bedrock-datasource-intermediatestorage-properties"></a>

`S3Location`  <a name="cfn-bedrock-datasource-intermediatestorage-s3location"></a>
An S3 bucket path.  
*Required*: Yes  
*Type*: [S3Location](aws-properties-bedrock-datasource-s3location.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource ParsingConfiguration
<a name="aws-properties-bedrock-datasource-parsingconfiguration"></a>

Settings for parsing document contents. If you exclude this field, the default parser converts the contents of each document into text before splitting it into chunks. Specify the parsing strategy to use in the `parsingStrategy` field and include the relevant configuration, or omit it to use the Amazon Bedrock default parser. For more information, see [Parsing options for your data source](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-advanced-parsing.html).

**Note**  
If you specify `BEDROCK_DATA_AUTOMATION` or `BEDROCK_FOUNDATION_MODEL` and it fails to parse a file, the Amazon Bedrock default parser will be used instead.

## Syntax
<a name="aws-properties-bedrock-datasource-parsingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-parsingconfiguration-syntax.json"></a>

```
{
  "[BedrockDataAutomationConfiguration](#cfn-bedrock-datasource-parsingconfiguration-bedrockdataautomationconfiguration)" : BedrockDataAutomationConfiguration,
  "[BedrockFoundationModelConfiguration](#cfn-bedrock-datasource-parsingconfiguration-bedrockfoundationmodelconfiguration)" : BedrockFoundationModelConfiguration,
  "[ParsingStrategy](#cfn-bedrock-datasource-parsingconfiguration-parsingstrategy)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-parsingconfiguration-syntax.yaml"></a>

```
  [BedrockDataAutomationConfiguration](#cfn-bedrock-datasource-parsingconfiguration-bedrockdataautomationconfiguration): 
    BedrockDataAutomationConfiguration
  [BedrockFoundationModelConfiguration](#cfn-bedrock-datasource-parsingconfiguration-bedrockfoundationmodelconfiguration): 
    BedrockFoundationModelConfiguration
  [ParsingStrategy](#cfn-bedrock-datasource-parsingconfiguration-parsingstrategy): String
```

## Properties
<a name="aws-properties-bedrock-datasource-parsingconfiguration-properties"></a>

`BedrockDataAutomationConfiguration`  <a name="cfn-bedrock-datasource-parsingconfiguration-bedrockdataautomationconfiguration"></a>
If you specify `BEDROCK_DATA_AUTOMATION` as the parsing strategy for ingesting your data source, use this object to modify configurations for using the Amazon Bedrock Data Automation parser.  
*Required*: No  
*Type*: [BedrockDataAutomationConfiguration](aws-properties-bedrock-datasource-bedrockdataautomationconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`BedrockFoundationModelConfiguration`  <a name="cfn-bedrock-datasource-parsingconfiguration-bedrockfoundationmodelconfiguration"></a>
If you specify `BEDROCK_FOUNDATION_MODEL` as the parsing strategy for ingesting your data source, use this object to modify configurations for using a foundation model to parse documents.  
*Required*: No  
*Type*: [BedrockFoundationModelConfiguration](aws-properties-bedrock-datasource-bedrockfoundationmodelconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ParsingStrategy`  <a name="cfn-bedrock-datasource-parsingconfiguration-parsingstrategy"></a>
The parsing strategy for the data source.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BEDROCK_FOUNDATION_MODEL | BEDROCK_DATA_AUTOMATION`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource ParsingPrompt
<a name="aws-properties-bedrock-datasource-parsingprompt"></a>

Instructions for interpreting the contents of a document.

## Syntax
<a name="aws-properties-bedrock-datasource-parsingprompt-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-parsingprompt-syntax.json"></a>

```
{
  "[ParsingPromptText](#cfn-bedrock-datasource-parsingprompt-parsingprompttext)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-parsingprompt-syntax.yaml"></a>

```
  [ParsingPromptText](#cfn-bedrock-datasource-parsingprompt-parsingprompttext): String
```

## Properties
<a name="aws-properties-bedrock-datasource-parsingprompt-properties"></a>

`ParsingPromptText`  <a name="cfn-bedrock-datasource-parsingprompt-parsingprompttext"></a>
Instructions for interpreting the contents of a document.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `10000`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource PatternObjectFilter
<a name="aws-properties-bedrock-datasource-patternobjectfilter"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-patternobjectfilter-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-patternobjectfilter-syntax.json"></a>

```
{
  "[ExclusionFilters](#cfn-bedrock-datasource-patternobjectfilter-exclusionfilters)" : [ String, ... ],
  "[InclusionFilters](#cfn-bedrock-datasource-patternobjectfilter-inclusionfilters)" : [ String, ... ],
  "[ObjectType](#cfn-bedrock-datasource-patternobjectfilter-objecttype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-patternobjectfilter-syntax.yaml"></a>

```
  [ExclusionFilters](#cfn-bedrock-datasource-patternobjectfilter-exclusionfilters): 
    - String
  [InclusionFilters](#cfn-bedrock-datasource-patternobjectfilter-inclusionfilters): 
    - String
  [ObjectType](#cfn-bedrock-datasource-patternobjectfilter-objecttype): String
```

## Properties
<a name="aws-properties-bedrock-datasource-patternobjectfilter-properties"></a>

`ExclusionFilters`  <a name="cfn-bedrock-datasource-patternobjectfilter-exclusionfilters"></a>
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.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `1000 | 25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionFilters`  <a name="cfn-bedrock-datasource-patternobjectfilter-inclusionfilters"></a>
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.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `1000 | 25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ObjectType`  <a name="cfn-bedrock-datasource-patternobjectfilter-objecttype"></a>
The supported object type or content type of the data source.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource PatternObjectFilterConfiguration
<a name="aws-properties-bedrock-datasource-patternobjectfilterconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-patternobjectfilterconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-patternobjectfilterconfiguration-syntax.json"></a>

```
{
  "[Filters](#cfn-bedrock-datasource-patternobjectfilterconfiguration-filters)" : [ PatternObjectFilter, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-datasource-patternobjectfilterconfiguration-syntax.yaml"></a>

```
  [Filters](#cfn-bedrock-datasource-patternobjectfilterconfiguration-filters): 
    - PatternObjectFilter
```

## Properties
<a name="aws-properties-bedrock-datasource-patternobjectfilterconfiguration-properties"></a>

`Filters`  <a name="cfn-bedrock-datasource-patternobjectfilterconfiguration-filters"></a>
The configuration of specific filters applied to your data source content. You can filter out or include certain content.  
*Required*: Yes  
*Type*: Array of [PatternObjectFilter](aws-properties-bedrock-datasource-patternobjectfilter.md)  
*Minimum*: `1`  
*Maximum*: `25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource S3DataSourceConfiguration
<a name="aws-properties-bedrock-datasource-s3datasourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-s3datasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-s3datasourceconfiguration-syntax.json"></a>

```
{
  "[BucketArn](#cfn-bedrock-datasource-s3datasourceconfiguration-bucketarn)" : String,
  "[BucketOwnerAccountId](#cfn-bedrock-datasource-s3datasourceconfiguration-bucketowneraccountid)" : String,
  "[InclusionPrefixes](#cfn-bedrock-datasource-s3datasourceconfiguration-inclusionprefixes)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-datasource-s3datasourceconfiguration-syntax.yaml"></a>

```
  [BucketArn](#cfn-bedrock-datasource-s3datasourceconfiguration-bucketarn): String
  [BucketOwnerAccountId](#cfn-bedrock-datasource-s3datasourceconfiguration-bucketowneraccountid): String
  [InclusionPrefixes](#cfn-bedrock-datasource-s3datasourceconfiguration-inclusionprefixes): 
    - String
```

## Properties
<a name="aws-properties-bedrock-datasource-s3datasourceconfiguration-properties"></a>

`BucketArn`  <a name="cfn-bedrock-datasource-s3datasourceconfiguration-bucketarn"></a>
The Amazon Resource Name (ARN) of the S3 bucket that contains your data.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-cn|-us-gov|-eusc|-iso(-[b-f])?)?:s3:::[a-z0-9][a-z0-9.-]{1,61}[a-z0-9]$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BucketOwnerAccountId`  <a name="cfn-bedrock-datasource-s3datasourceconfiguration-bucketowneraccountid"></a>
The account ID for the owner of the S3 bucket.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9]{12}$`  
*Minimum*: `12`  
*Maximum*: `12`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionPrefixes`  <a name="cfn-bedrock-datasource-s3datasourceconfiguration-inclusionprefixes"></a>
A list of S3 prefixes to include certain files or content. This field is an array with a maximum of one item, which can contain a string that has a maximum length of 300 characters. For more information, see [Organizing objects using prefixes](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html).  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1 | 1`  
*Maximum*: `300 | 1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource S3Location
<a name="aws-properties-bedrock-datasource-s3location"></a>

A storage location in an Amazon S3 bucket.

## Syntax
<a name="aws-properties-bedrock-datasource-s3location-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-s3location-syntax.json"></a>

```
{
  "[URI](#cfn-bedrock-datasource-s3location-uri)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-s3location-syntax.yaml"></a>

```
  [URI](#cfn-bedrock-datasource-s3location-uri): String
```

## Properties
<a name="aws-properties-bedrock-datasource-s3location-properties"></a>

`URI`  <a name="cfn-bedrock-datasource-s3location-uri"></a>
An object URI starting with `s3://`.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^s3://.{1,128}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SalesforceCrawlerConfiguration
<a name="aws-properties-bedrock-datasource-salesforcecrawlerconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-salesforcecrawlerconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-salesforcecrawlerconfiguration-syntax.json"></a>

```
{
  "[FilterConfiguration](#cfn-bedrock-datasource-salesforcecrawlerconfiguration-filterconfiguration)" : CrawlFilterConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-salesforcecrawlerconfiguration-syntax.yaml"></a>

```
  [FilterConfiguration](#cfn-bedrock-datasource-salesforcecrawlerconfiguration-filterconfiguration): 
    CrawlFilterConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-salesforcecrawlerconfiguration-properties"></a>

`FilterConfiguration`  <a name="cfn-bedrock-datasource-salesforcecrawlerconfiguration-filterconfiguration"></a>
The configuration of filtering the Salesforce content. For example, configuring regular expression patterns to include or exclude certain content.  
*Required*: No  
*Type*: [CrawlFilterConfiguration](aws-properties-bedrock-datasource-crawlfilterconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SalesforceDataSourceConfiguration
<a name="aws-properties-bedrock-datasource-salesforcedatasourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-salesforcedatasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-salesforcedatasourceconfiguration-syntax.json"></a>

```
{
  "[CrawlerConfiguration](#cfn-bedrock-datasource-salesforcedatasourceconfiguration-crawlerconfiguration)" : SalesforceCrawlerConfiguration,
  "[SourceConfiguration](#cfn-bedrock-datasource-salesforcedatasourceconfiguration-sourceconfiguration)" : SalesforceSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-salesforcedatasourceconfiguration-syntax.yaml"></a>

```
  [CrawlerConfiguration](#cfn-bedrock-datasource-salesforcedatasourceconfiguration-crawlerconfiguration): 
    SalesforceCrawlerConfiguration
  [SourceConfiguration](#cfn-bedrock-datasource-salesforcedatasourceconfiguration-sourceconfiguration): 
    SalesforceSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-salesforcedatasourceconfiguration-properties"></a>

`CrawlerConfiguration`  <a name="cfn-bedrock-datasource-salesforcedatasourceconfiguration-crawlerconfiguration"></a>
The configuration of the Salesforce content. For example, configuring specific types of Salesforce content.  
*Required*: No  
*Type*: [SalesforceCrawlerConfiguration](aws-properties-bedrock-datasource-salesforcecrawlerconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceConfiguration`  <a name="cfn-bedrock-datasource-salesforcedatasourceconfiguration-sourceconfiguration"></a>
The endpoint information to connect to your Salesforce data source.  
*Required*: Yes  
*Type*: [SalesforceSourceConfiguration](aws-properties-bedrock-datasource-salesforcesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SalesforceSourceConfiguration
<a name="aws-properties-bedrock-datasource-salesforcesourceconfiguration"></a>

The endpoint information to connect to your Salesforce data source.

## Syntax
<a name="aws-properties-bedrock-datasource-salesforcesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-salesforcesourceconfiguration-syntax.json"></a>

```
{
  "[AuthType](#cfn-bedrock-datasource-salesforcesourceconfiguration-authtype)" : String,
  "[CredentialsSecretArn](#cfn-bedrock-datasource-salesforcesourceconfiguration-credentialssecretarn)" : String,
  "[HostUrl](#cfn-bedrock-datasource-salesforcesourceconfiguration-hosturl)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-salesforcesourceconfiguration-syntax.yaml"></a>

```
  [AuthType](#cfn-bedrock-datasource-salesforcesourceconfiguration-authtype): String
  [CredentialsSecretArn](#cfn-bedrock-datasource-salesforcesourceconfiguration-credentialssecretarn): String
  [HostUrl](#cfn-bedrock-datasource-salesforcesourceconfiguration-hosturl): String
```

## Properties
<a name="aws-properties-bedrock-datasource-salesforcesourceconfiguration-properties"></a>

`AuthType`  <a name="cfn-bedrock-datasource-salesforcesourceconfiguration-authtype"></a>
The supported authentication type to authenticate and connect to your Salesforce instance.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `OAUTH2_CLIENT_CREDENTIALS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CredentialsSecretArn`  <a name="cfn-bedrock-datasource-salesforcesourceconfiguration-credentialssecretarn"></a>
The Amazon Resource Name of an AWS Secrets Manager secret that stores your authentication credentials for your Salesforce instance URL. For more information on the key-value pairs that must be included in your secret, depending on your authentication type, see [Salesforce connection configuration](https://docs.aws.amazon.com/bedrock/latest/userguide/salesforce-data-source-connector.html#configuration-salesforce-connector).  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HostUrl`  <a name="cfn-bedrock-datasource-salesforcesourceconfiguration-hosturl"></a>
The Salesforce host URL or instance URL.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^https://[A-Za-z0-9][^\s]*$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SeedUrl
<a name="aws-properties-bedrock-datasource-seedurl"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-seedurl-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-seedurl-syntax.json"></a>

```
{
  "[Url](#cfn-bedrock-datasource-seedurl-url)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-seedurl-syntax.yaml"></a>

```
  [Url](#cfn-bedrock-datasource-seedurl-url): String
```

## Properties
<a name="aws-properties-bedrock-datasource-seedurl-properties"></a>

`Url`  <a name="cfn-bedrock-datasource-seedurl-url"></a>
A seed or starting point URL.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^https?://[A-Za-z0-9][^\s]*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SemanticChunkingConfiguration
<a name="aws-properties-bedrock-datasource-semanticchunkingconfiguration"></a>

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.

## Syntax
<a name="aws-properties-bedrock-datasource-semanticchunkingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-semanticchunkingconfiguration-syntax.json"></a>

```
{
  "[BreakpointPercentileThreshold](#cfn-bedrock-datasource-semanticchunkingconfiguration-breakpointpercentilethreshold)" : Integer,
  "[BufferSize](#cfn-bedrock-datasource-semanticchunkingconfiguration-buffersize)" : Integer,
  "[MaxTokens](#cfn-bedrock-datasource-semanticchunkingconfiguration-maxtokens)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-datasource-semanticchunkingconfiguration-syntax.yaml"></a>

```
  [BreakpointPercentileThreshold](#cfn-bedrock-datasource-semanticchunkingconfiguration-breakpointpercentilethreshold): Integer
  [BufferSize](#cfn-bedrock-datasource-semanticchunkingconfiguration-buffersize): Integer
  [MaxTokens](#cfn-bedrock-datasource-semanticchunkingconfiguration-maxtokens): Integer
```

## Properties
<a name="aws-properties-bedrock-datasource-semanticchunkingconfiguration-properties"></a>

`BreakpointPercentileThreshold`  <a name="cfn-bedrock-datasource-semanticchunkingconfiguration-breakpointpercentilethreshold"></a>
The dissimilarity threshold for splitting chunks.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `50`  
*Maximum*: `99`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`BufferSize`  <a name="cfn-bedrock-datasource-semanticchunkingconfiguration-buffersize"></a>
The buffer size.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MaxTokens`  <a name="cfn-bedrock-datasource-semanticchunkingconfiguration-maxtokens"></a>
The maximum number of tokens that a chunk can contain.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource ServerSideEncryptionConfiguration
<a name="aws-properties-bedrock-datasource-serversideencryptionconfiguration"></a>

Contains the configuration for server-side encryption.

## Syntax
<a name="aws-properties-bedrock-datasource-serversideencryptionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-serversideencryptionconfiguration-syntax.json"></a>

```
{
  "[KmsKeyArn](#cfn-bedrock-datasource-serversideencryptionconfiguration-kmskeyarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-serversideencryptionconfiguration-syntax.yaml"></a>

```
  [KmsKeyArn](#cfn-bedrock-datasource-serversideencryptionconfiguration-kmskeyarn): String
```

## Properties
<a name="aws-properties-bedrock-datasource-serversideencryptionconfiguration-properties"></a>

`KmsKeyArn`  <a name="cfn-bedrock-datasource-serversideencryptionconfiguration-kmskeyarn"></a>
The Amazon Resource Name (ARN) of the AWS KMS key used to encrypt the resource.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(-cn|-us-gov|-eusc|-iso(-[b-f])?)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SharePointCrawlerConfiguration
<a name="aws-properties-bedrock-datasource-sharepointcrawlerconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-sharepointcrawlerconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-sharepointcrawlerconfiguration-syntax.json"></a>

```
{
  "[FilterConfiguration](#cfn-bedrock-datasource-sharepointcrawlerconfiguration-filterconfiguration)" : CrawlFilterConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-sharepointcrawlerconfiguration-syntax.yaml"></a>

```
  [FilterConfiguration](#cfn-bedrock-datasource-sharepointcrawlerconfiguration-filterconfiguration): 
    CrawlFilterConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-sharepointcrawlerconfiguration-properties"></a>

`FilterConfiguration`  <a name="cfn-bedrock-datasource-sharepointcrawlerconfiguration-filterconfiguration"></a>
The configuration of filtering the SharePoint content. For example, configuring regular expression patterns to include or exclude certain content.  
*Required*: No  
*Type*: [CrawlFilterConfiguration](aws-properties-bedrock-datasource-crawlfilterconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SharePointDataSourceConfiguration
<a name="aws-properties-bedrock-datasource-sharepointdatasourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-sharepointdatasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-sharepointdatasourceconfiguration-syntax.json"></a>

```
{
  "[CrawlerConfiguration](#cfn-bedrock-datasource-sharepointdatasourceconfiguration-crawlerconfiguration)" : SharePointCrawlerConfiguration,
  "[SourceConfiguration](#cfn-bedrock-datasource-sharepointdatasourceconfiguration-sourceconfiguration)" : SharePointSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-sharepointdatasourceconfiguration-syntax.yaml"></a>

```
  [CrawlerConfiguration](#cfn-bedrock-datasource-sharepointdatasourceconfiguration-crawlerconfiguration): 
    SharePointCrawlerConfiguration
  [SourceConfiguration](#cfn-bedrock-datasource-sharepointdatasourceconfiguration-sourceconfiguration): 
    SharePointSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-sharepointdatasourceconfiguration-properties"></a>

`CrawlerConfiguration`  <a name="cfn-bedrock-datasource-sharepointdatasourceconfiguration-crawlerconfiguration"></a>
The configuration of the SharePoint content. For example, configuring specific types of SharePoint content.  
*Required*: No  
*Type*: [SharePointCrawlerConfiguration](aws-properties-bedrock-datasource-sharepointcrawlerconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceConfiguration`  <a name="cfn-bedrock-datasource-sharepointdatasourceconfiguration-sourceconfiguration"></a>
The endpoint information to connect to your SharePoint data source.  
*Required*: Yes  
*Type*: [SharePointSourceConfiguration](aws-properties-bedrock-datasource-sharepointsourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource SharePointSourceConfiguration
<a name="aws-properties-bedrock-datasource-sharepointsourceconfiguration"></a>

The endpoint information to connect to your SharePoint data source.

## Syntax
<a name="aws-properties-bedrock-datasource-sharepointsourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-sharepointsourceconfiguration-syntax.json"></a>

```
{
  "[AuthType](#cfn-bedrock-datasource-sharepointsourceconfiguration-authtype)" : String,
  "[CredentialsSecretArn](#cfn-bedrock-datasource-sharepointsourceconfiguration-credentialssecretarn)" : String,
  "[Domain](#cfn-bedrock-datasource-sharepointsourceconfiguration-domain)" : String,
  "[HostType](#cfn-bedrock-datasource-sharepointsourceconfiguration-hosttype)" : String,
  "[SiteUrls](#cfn-bedrock-datasource-sharepointsourceconfiguration-siteurls)" : [ String, ... ],
  "[TenantId](#cfn-bedrock-datasource-sharepointsourceconfiguration-tenantid)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-sharepointsourceconfiguration-syntax.yaml"></a>

```
  [AuthType](#cfn-bedrock-datasource-sharepointsourceconfiguration-authtype): String
  [CredentialsSecretArn](#cfn-bedrock-datasource-sharepointsourceconfiguration-credentialssecretarn): String
  [Domain](#cfn-bedrock-datasource-sharepointsourceconfiguration-domain): String
  [HostType](#cfn-bedrock-datasource-sharepointsourceconfiguration-hosttype): String
  [SiteUrls](#cfn-bedrock-datasource-sharepointsourceconfiguration-siteurls): 
    - String
  [TenantId](#cfn-bedrock-datasource-sharepointsourceconfiguration-tenantid): String
```

## Properties
<a name="aws-properties-bedrock-datasource-sharepointsourceconfiguration-properties"></a>

`AuthType`  <a name="cfn-bedrock-datasource-sharepointsourceconfiguration-authtype"></a>
The supported authentication type to authenticate and connect to your SharePoint site/sites.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `OAUTH2_CLIENT_CREDENTIALS | OAUTH2_SHAREPOINT_APP_ONLY_CLIENT_CREDENTIALS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CredentialsSecretArn`  <a name="cfn-bedrock-datasource-sharepointsourceconfiguration-credentialssecretarn"></a>
The Amazon Resource Name of an AWS 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](https://docs.aws.amazon.com/bedrock/latest/userguide/sharepoint-data-source-connector.html#configuration-sharepoint-connector).  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Domain`  <a name="cfn-bedrock-datasource-sharepointsourceconfiguration-domain"></a>
The domain of your SharePoint instance or site URL/URLs.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`HostType`  <a name="cfn-bedrock-datasource-sharepointsourceconfiguration-hosttype"></a>
The supported host type, whether online/cloud or server/on-premises.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `ONLINE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SiteUrls`  <a name="cfn-bedrock-datasource-sharepointsourceconfiguration-siteurls"></a>
A list of one or more SharePoint site URLs.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TenantId`  <a name="cfn-bedrock-datasource-sharepointsourceconfiguration-tenantid"></a>
The identifier of your Microsoft 365 tenant.  
*Required*: No  
*Type*: String  
*Pattern*: `^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource Transformation
<a name="aws-properties-bedrock-datasource-transformation"></a>

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`.

## Syntax
<a name="aws-properties-bedrock-datasource-transformation-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-transformation-syntax.json"></a>

```
{
  "[StepToApply](#cfn-bedrock-datasource-transformation-steptoapply)" : String,
  "[TransformationFunction](#cfn-bedrock-datasource-transformation-transformationfunction)" : TransformationFunction
}
```

### YAML
<a name="aws-properties-bedrock-datasource-transformation-syntax.yaml"></a>

```
  [StepToApply](#cfn-bedrock-datasource-transformation-steptoapply): String
  [TransformationFunction](#cfn-bedrock-datasource-transformation-transformationfunction): 
    TransformationFunction
```

## Properties
<a name="aws-properties-bedrock-datasource-transformation-properties"></a>

`StepToApply`  <a name="cfn-bedrock-datasource-transformation-steptoapply"></a>
When the service applies the transformation.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `POST_CHUNKING`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TransformationFunction`  <a name="cfn-bedrock-datasource-transformation-transformationfunction"></a>
A Lambda function that processes documents.  
*Required*: Yes  
*Type*: [TransformationFunction](aws-properties-bedrock-datasource-transformationfunction.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource TransformationFunction
<a name="aws-properties-bedrock-datasource-transformationfunction"></a>

A Lambda function that processes documents.

## Syntax
<a name="aws-properties-bedrock-datasource-transformationfunction-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-transformationfunction-syntax.json"></a>

```
{
  "[TransformationLambdaConfiguration](#cfn-bedrock-datasource-transformationfunction-transformationlambdaconfiguration)" : TransformationLambdaConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-transformationfunction-syntax.yaml"></a>

```
  [TransformationLambdaConfiguration](#cfn-bedrock-datasource-transformationfunction-transformationlambdaconfiguration): 
    TransformationLambdaConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-transformationfunction-properties"></a>

`TransformationLambdaConfiguration`  <a name="cfn-bedrock-datasource-transformationfunction-transformationlambdaconfiguration"></a>
The Lambda function.  
*Required*: Yes  
*Type*: [TransformationLambdaConfiguration](aws-properties-bedrock-datasource-transformationlambdaconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource TransformationLambdaConfiguration
<a name="aws-properties-bedrock-datasource-transformationlambdaconfiguration"></a>

A Lambda function that processes documents.

## Syntax
<a name="aws-properties-bedrock-datasource-transformationlambdaconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-transformationlambdaconfiguration-syntax.json"></a>

```
{
  "[LambdaArn](#cfn-bedrock-datasource-transformationlambdaconfiguration-lambdaarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-transformationlambdaconfiguration-syntax.yaml"></a>

```
  [LambdaArn](#cfn-bedrock-datasource-transformationlambdaconfiguration-lambdaarn): String
```

## Properties
<a name="aws-properties-bedrock-datasource-transformationlambdaconfiguration-properties"></a>

`LambdaArn`  <a name="cfn-bedrock-datasource-transformationlambdaconfiguration-lambdaarn"></a>
The function's ARN identifier.  
*Required*: Yes  
*Type*: String  
*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-_]+))?$`  
*Minimum*: `0`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource UrlConfiguration
<a name="aws-properties-bedrock-datasource-urlconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-urlconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-urlconfiguration-syntax.json"></a>

```
{
  "[SeedUrls](#cfn-bedrock-datasource-urlconfiguration-seedurls)" : [ SeedUrl, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-datasource-urlconfiguration-syntax.yaml"></a>

```
  [SeedUrls](#cfn-bedrock-datasource-urlconfiguration-seedurls): 
    - SeedUrl
```

## Properties
<a name="aws-properties-bedrock-datasource-urlconfiguration-properties"></a>

`SeedUrls`  <a name="cfn-bedrock-datasource-urlconfiguration-seedurls"></a>
One or more seed or starting point URLs.  
*Required*: Yes  
*Type*: Array of [SeedUrl](aws-properties-bedrock-datasource-seedurl.md)  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource VectorIngestionConfiguration
<a name="aws-properties-bedrock-datasource-vectoringestionconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-vectoringestionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-vectoringestionconfiguration-syntax.json"></a>

```
{
  "[ChunkingConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-chunkingconfiguration)" : ChunkingConfiguration,
  "[ContextEnrichmentConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-contextenrichmentconfiguration)" : ContextEnrichmentConfiguration,
  "[CustomTransformationConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-customtransformationconfiguration)" : CustomTransformationConfiguration,
  "[ParsingConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-parsingconfiguration)" : ParsingConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-vectoringestionconfiguration-syntax.yaml"></a>

```
  [ChunkingConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-chunkingconfiguration): 
    ChunkingConfiguration
  [ContextEnrichmentConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-contextenrichmentconfiguration): 
    ContextEnrichmentConfiguration
  [CustomTransformationConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-customtransformationconfiguration): 
    CustomTransformationConfiguration
  [ParsingConfiguration](#cfn-bedrock-datasource-vectoringestionconfiguration-parsingconfiguration): 
    ParsingConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-vectoringestionconfiguration-properties"></a>

`ChunkingConfiguration`  <a name="cfn-bedrock-datasource-vectoringestionconfiguration-chunkingconfiguration"></a>
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.  
*Required*: No  
*Type*: [ChunkingConfiguration](aws-properties-bedrock-datasource-chunkingconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ContextEnrichmentConfiguration`  <a name="cfn-bedrock-datasource-vectoringestionconfiguration-contextenrichmentconfiguration"></a>
The context enrichment configuration used for ingestion of the data into the vector store.  
*Required*: No  
*Type*: [ContextEnrichmentConfiguration](aws-properties-bedrock-datasource-contextenrichmentconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CustomTransformationConfiguration`  <a name="cfn-bedrock-datasource-vectoringestionconfiguration-customtransformationconfiguration"></a>
A custom document transformer for parsed data source documents.  
*Required*: No  
*Type*: [CustomTransformationConfiguration](aws-properties-bedrock-datasource-customtransformationconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ParsingConfiguration`  <a name="cfn-bedrock-datasource-vectoringestionconfiguration-parsingconfiguration"></a>
Configurations for a parser to use for parsing documents in your data source. If you exclude this field, the default parser will be used.  
*Required*: No  
*Type*: [ParsingConfiguration](aws-properties-bedrock-datasource-parsingconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::DataSource WebCrawlerConfiguration
<a name="aws-properties-bedrock-datasource-webcrawlerconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-webcrawlerconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-webcrawlerconfiguration-syntax.json"></a>

```
{
  "[CrawlerLimits](#cfn-bedrock-datasource-webcrawlerconfiguration-crawlerlimits)" : WebCrawlerLimits,
  "[ExclusionFilters](#cfn-bedrock-datasource-webcrawlerconfiguration-exclusionfilters)" : [ String, ... ],
  "[InclusionFilters](#cfn-bedrock-datasource-webcrawlerconfiguration-inclusionfilters)" : [ String, ... ],
  "[Scope](#cfn-bedrock-datasource-webcrawlerconfiguration-scope)" : String,
  "[UserAgent](#cfn-bedrock-datasource-webcrawlerconfiguration-useragent)" : String,
  "[UserAgentHeader](#cfn-bedrock-datasource-webcrawlerconfiguration-useragentheader)" : String
}
```

### YAML
<a name="aws-properties-bedrock-datasource-webcrawlerconfiguration-syntax.yaml"></a>

```
  [CrawlerLimits](#cfn-bedrock-datasource-webcrawlerconfiguration-crawlerlimits): 
    WebCrawlerLimits
  [ExclusionFilters](#cfn-bedrock-datasource-webcrawlerconfiguration-exclusionfilters): 
    - String
  [InclusionFilters](#cfn-bedrock-datasource-webcrawlerconfiguration-inclusionfilters): 
    - String
  [Scope](#cfn-bedrock-datasource-webcrawlerconfiguration-scope): String
  [UserAgent](#cfn-bedrock-datasource-webcrawlerconfiguration-useragent): String
  [UserAgentHeader](#cfn-bedrock-datasource-webcrawlerconfiguration-useragentheader): String
```

## Properties
<a name="aws-properties-bedrock-datasource-webcrawlerconfiguration-properties"></a>

`CrawlerLimits`  <a name="cfn-bedrock-datasource-webcrawlerconfiguration-crawlerlimits"></a>
The configuration of crawl limits for the web URLs.  
*Required*: No  
*Type*: [WebCrawlerLimits](aws-properties-bedrock-datasource-webcrawlerlimits.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExclusionFilters`  <a name="cfn-bedrock-datasource-webcrawlerconfiguration-exclusionfilters"></a>
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.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `1000 | 25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InclusionFilters`  <a name="cfn-bedrock-datasource-webcrawlerconfiguration-inclusionfilters"></a>
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.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `1000 | 25`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Scope`  <a name="cfn-bedrock-datasource-webcrawlerconfiguration-scope"></a>
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".  
*Required*: No  
*Type*: String  
*Allowed values*: `HOST_ONLY | SUBDOMAINS`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserAgent`  <a name="cfn-bedrock-datasource-webcrawlerconfiguration-useragent"></a>
Returns the user agent suffix for your web crawler.  
*Required*: No  
*Type*: String  
*Minimum*: `15`  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`UserAgentHeader`  <a name="cfn-bedrock-datasource-webcrawlerconfiguration-useragentheader"></a>
A string used for identifying the crawler or bot when it accesses a web server. The user agent header value consists of the `bedrockbot`, UUID, and a user agent suffix for your crawler (if one is provided). By default, it is set to `bedrockbot_UUID`. You can optionally append a custom suffix to `bedrockbot_UUID` to allowlist a specific user agent permitted to access your source URLs.   
*Required*: No  
*Type*: String  
*Minimum*: `61`  
*Maximum*: `86`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource WebCrawlerLimits
<a name="aws-properties-bedrock-datasource-webcrawlerlimits"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-webcrawlerlimits-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-webcrawlerlimits-syntax.json"></a>

```
{
  "[MaxPages](#cfn-bedrock-datasource-webcrawlerlimits-maxpages)" : Integer,
  "[RateLimit](#cfn-bedrock-datasource-webcrawlerlimits-ratelimit)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-datasource-webcrawlerlimits-syntax.yaml"></a>

```
  [MaxPages](#cfn-bedrock-datasource-webcrawlerlimits-maxpages): Integer
  [RateLimit](#cfn-bedrock-datasource-webcrawlerlimits-ratelimit): Integer
```

## Properties
<a name="aws-properties-bedrock-datasource-webcrawlerlimits-properties"></a>

`MaxPages`  <a name="cfn-bedrock-datasource-webcrawlerlimits-maxpages"></a>
 The max number of web pages crawled from your source URLs, up to 25,000 pages. If the web pages exceed this limit, the data source sync will fail and no web pages will be ingested.   
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RateLimit`  <a name="cfn-bedrock-datasource-webcrawlerlimits-ratelimit"></a>
The max rate at which pages are crawled, up to 300 per minute per host.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `300`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource WebDataSourceConfiguration
<a name="aws-properties-bedrock-datasource-webdatasourceconfiguration"></a>

The configuration details for the web data source.

## Syntax
<a name="aws-properties-bedrock-datasource-webdatasourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-webdatasourceconfiguration-syntax.json"></a>

```
{
  "[CrawlerConfiguration](#cfn-bedrock-datasource-webdatasourceconfiguration-crawlerconfiguration)" : WebCrawlerConfiguration,
  "[SourceConfiguration](#cfn-bedrock-datasource-webdatasourceconfiguration-sourceconfiguration)" : WebSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-webdatasourceconfiguration-syntax.yaml"></a>

```
  [CrawlerConfiguration](#cfn-bedrock-datasource-webdatasourceconfiguration-crawlerconfiguration): 
    WebCrawlerConfiguration
  [SourceConfiguration](#cfn-bedrock-datasource-webdatasourceconfiguration-sourceconfiguration): 
    WebSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-webdatasourceconfiguration-properties"></a>

`CrawlerConfiguration`  <a name="cfn-bedrock-datasource-webdatasourceconfiguration-crawlerconfiguration"></a>
The Web Crawler configuration details for the web data source.  
*Required*: No  
*Type*: [WebCrawlerConfiguration](aws-properties-bedrock-datasource-webcrawlerconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceConfiguration`  <a name="cfn-bedrock-datasource-webdatasourceconfiguration-sourceconfiguration"></a>
The source configuration details for the web data source.  
*Required*: Yes  
*Type*: [WebSourceConfiguration](aws-properties-bedrock-datasource-websourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::DataSource WebSourceConfiguration
<a name="aws-properties-bedrock-datasource-websourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-datasource-websourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-datasource-websourceconfiguration-syntax.json"></a>

```
{
  "[UrlConfiguration](#cfn-bedrock-datasource-websourceconfiguration-urlconfiguration)" : UrlConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-datasource-websourceconfiguration-syntax.yaml"></a>

```
  [UrlConfiguration](#cfn-bedrock-datasource-websourceconfiguration-urlconfiguration): 
    UrlConfiguration
```

## Properties
<a name="aws-properties-bedrock-datasource-websourceconfiguration-properties"></a>

`UrlConfiguration`  <a name="cfn-bedrock-datasource-websourceconfiguration-urlconfiguration"></a>
The configuration of the URL/URLs.  
*Required*: Yes  
*Type*: [UrlConfiguration](aws-properties-bedrock-datasource-urlconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::EnforcedGuardrailConfiguration
<a name="aws-resource-bedrock-enforcedguardrailconfiguration"></a>

Sets the account-level enforced guardrail configuration.

## Syntax
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::EnforcedGuardrailConfiguration",
  "Properties" : {
      "[GuardrailIdentifier](#cfn-bedrock-enforcedguardrailconfiguration-guardrailidentifier)" : String,
      "[GuardrailVersion](#cfn-bedrock-enforcedguardrailconfiguration-guardrailversion)" : String,
      "[ModelEnforcement](#cfn-bedrock-enforcedguardrailconfiguration-modelenforcement)" : ModelEnforcement,
      "[SelectiveContentGuarding](#cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding)" : SelectiveContentGuarding
    }
}
```

### YAML
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-syntax.yaml"></a>

```
Type: AWS::Bedrock::EnforcedGuardrailConfiguration
Properties:
  [GuardrailIdentifier](#cfn-bedrock-enforcedguardrailconfiguration-guardrailidentifier): String
  [GuardrailVersion](#cfn-bedrock-enforcedguardrailconfiguration-guardrailversion): String
  [ModelEnforcement](#cfn-bedrock-enforcedguardrailconfiguration-modelenforcement): 
    ModelEnforcement
  [SelectiveContentGuarding](#cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding): 
    SelectiveContentGuarding
```

## Properties
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-properties"></a>

`GuardrailIdentifier`  <a name="cfn-bedrock-enforcedguardrailconfiguration-guardrailidentifier"></a>
Identifier for the guardrail, could be the ID or the ARN.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$`  
*Minimum*: `0`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GuardrailVersion`  <a name="cfn-bedrock-enforcedguardrailconfiguration-guardrailversion"></a>
Numerical guardrail version.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[1-9][0-9]{0,7}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelEnforcement`  <a name="cfn-bedrock-enforcedguardrailconfiguration-modelenforcement"></a>
Model-specific information for the enforced guardrail configuration.  
*Required*: No  
*Type*: [ModelEnforcement](aws-properties-bedrock-enforcedguardrailconfiguration-modelenforcement.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SelectiveContentGuarding`  <a name="cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding"></a>
Selective content guarding controls for enforced guardrails.  
*Required*: No  
*Type*: [SelectiveContentGuarding](aws-properties-bedrock-enforcedguardrailconfiguration-selectivecontentguarding.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-return-values"></a>

### Ref
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-enforcedguardrailconfiguration-return-values-fn--getatt-fn--getatt"></a>

`ConfigId`  <a name="ConfigId-fn::getatt"></a>
Unique ID for the account enforced configuration.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
Timestamp.

`CreatedBy`  <a name="CreatedBy-fn::getatt"></a>
The ARN of the role used to update the configuration.

`GuardrailArn`  <a name="GuardrailArn-fn::getatt"></a>
ARN representation for the guardrail.

`GuardrailId`  <a name="GuardrailId-fn::getatt"></a>
Unique ID for the guardrail.

`Owner`  <a name="Owner-fn::getatt"></a>
Configuration owner type.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
Timestamp.

`UpdatedBy`  <a name="UpdatedBy-fn::getatt"></a>
The ARN of the role used to update the configuration.

# AWS::Bedrock::EnforcedGuardrailConfiguration ModelEnforcement
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-modelenforcement"></a>

Model-specific information for the enforced guardrail configuration.

## Syntax
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-modelenforcement-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-modelenforcement-syntax.json"></a>

```
{
  "[ExcludedModels](#cfn-bedrock-enforcedguardrailconfiguration-modelenforcement-excludedmodels)" : [ String, ... ],
  "[IncludedModels](#cfn-bedrock-enforcedguardrailconfiguration-modelenforcement-includedmodels)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-modelenforcement-syntax.yaml"></a>

```
  [ExcludedModels](#cfn-bedrock-enforcedguardrailconfiguration-modelenforcement-excludedmodels): 
    - String
  [IncludedModels](#cfn-bedrock-enforcedguardrailconfiguration-modelenforcement-includedmodels): 
    - String
```

## Properties
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-modelenforcement-properties"></a>

`ExcludedModels`  <a name="cfn-bedrock-enforcedguardrailconfiguration-modelenforcement-excludedmodels"></a>
Models to exclude from enforcement of the guardrail.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`IncludedModels`  <a name="cfn-bedrock-enforcedguardrailconfiguration-modelenforcement-includedmodels"></a>
Models to enforce the guardrail on.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::EnforcedGuardrailConfiguration SelectiveContentGuarding
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-selectivecontentguarding"></a>

Selective content guarding controls for enforced guardrails.

## Syntax
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-syntax.json"></a>

```
{
  "[Messages](#cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-messages)" : String,
  "[System](#cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-system)" : String
}
```

### YAML
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-syntax.yaml"></a>

```
  [Messages](#cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-messages): String
  [System](#cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-system): String
```

## Properties
<a name="aws-properties-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-properties"></a>

`Messages`  <a name="cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-messages"></a>
Selective guarding mode for user messages.  
*Required*: No  
*Type*: String  
*Allowed values*: `SELECTIVE | COMPREHENSIVE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`System`  <a name="cfn-bedrock-enforcedguardrailconfiguration-selectivecontentguarding-system"></a>
Selective guarding mode for system prompts.  
*Required*: No  
*Type*: String  
*Allowed values*: `SELECTIVE | COMPREHENSIVE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow
<a name="aws-resource-bedrock-flow"></a>

Creates a prompt flow that you can use to send an input through various steps to yield an output. You define a flow by configuring nodes, each of which corresponds to a step of the flow, and creating connections between the nodes to create paths to different outputs. You can define the flow in one of the following ways:
+ Define a [FlowDefinition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-flow-flowdefinition.html) in the `Definition` property.
+ Provide the definition in the `DefinitionString` property as a JSON-formatted string matching the [FlowDefinition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-flow-flowdefinition.html) property.
+ Provide an Amazon S3 location in the `DefinitionS3Location` property that matches the [FlowDefinition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-flow-flowdefinition.html).

If you use the `DefinitionString` or `DefinitionS3Location` property, you can use the `DefinitionSubstitutions` property to define key-value pairs to replace at runtime.

For more information, see [How it works](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-how-it-works.html) and [Create a prompt flow in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-create.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-resource-bedrock-flow-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-flow-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::Flow",
  "Properties" : {
      "[CustomerEncryptionKeyArn](#cfn-bedrock-flow-customerencryptionkeyarn)" : String,
      "[Definition](#cfn-bedrock-flow-definition)" : FlowDefinition,
      "[DefinitionS3Location](#cfn-bedrock-flow-definitions3location)" : S3Location,
      "[DefinitionString](#cfn-bedrock-flow-definitionstring)" : String,
      "[DefinitionSubstitutions](#cfn-bedrock-flow-definitionsubstitutions)" : {Key: Value, ...},
      "[Description](#cfn-bedrock-flow-description)" : String,
      "[ExecutionRoleArn](#cfn-bedrock-flow-executionrolearn)" : String,
      "[Name](#cfn-bedrock-flow-name)" : String,
      "[Tags](#cfn-bedrock-flow-tags)" : {Key: Value, ...},
      "[TestAliasTags](#cfn-bedrock-flow-testaliastags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-bedrock-flow-syntax.yaml"></a>

```
Type: AWS::Bedrock::Flow
Properties:
  [CustomerEncryptionKeyArn](#cfn-bedrock-flow-customerencryptionkeyarn): String
  [Definition](#cfn-bedrock-flow-definition): 
    FlowDefinition
  [DefinitionS3Location](#cfn-bedrock-flow-definitions3location): 
    S3Location
  [DefinitionString](#cfn-bedrock-flow-definitionstring): 
    String
  [DefinitionSubstitutions](#cfn-bedrock-flow-definitionsubstitutions): 
    Key: Value
  [Description](#cfn-bedrock-flow-description): String
  [ExecutionRoleArn](#cfn-bedrock-flow-executionrolearn): String
  [Name](#cfn-bedrock-flow-name): String
  [Tags](#cfn-bedrock-flow-tags): 
    Key: Value
  [TestAliasTags](#cfn-bedrock-flow-testaliastags): 
    Key: Value
```

## Properties
<a name="aws-resource-bedrock-flow-properties"></a>

`CustomerEncryptionKeyArn`  <a name="cfn-bedrock-flow-customerencryptionkeyarn"></a>
The Amazon Resource Name (ARN) of the KMS key that the flow is encrypted with.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Definition`  <a name="cfn-bedrock-flow-definition"></a>
The definition of the nodes and connections between the nodes in the flow.  
*Required*: No  
*Type*: [FlowDefinition](aws-properties-bedrock-flow-flowdefinition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DefinitionS3Location`  <a name="cfn-bedrock-flow-definitions3location"></a>
The Amazon S3 location of the flow definition.  
*Required*: No  
*Type*: [S3Location](aws-properties-bedrock-flow-s3location.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DefinitionString`  <a name="cfn-bedrock-flow-definitionstring"></a>
The definition of the flow as a JSON-formatted string. The string must match the format in [FlowDefinition](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-flow-flowdefinition.html).  
*Required*: No  
*Type*: String  
*Maximum*: `512000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DefinitionSubstitutions`  <a name="cfn-bedrock-flow-definitionsubstitutions"></a>
A map that specifies the mappings for placeholder variables in the prompt flow definition. This enables the customer to inject values obtained at runtime. Variables can be template parameter names, resource logical IDs, resource attributes, or a variable in a key-value map. Only supported with the `DefinitionString` and `DefinitionS3Location` fields.  
Substitutions must follow the syntax: `${key_name}` or `${variable_1,variable_2,...}`.  
*Required*: No  
*Type*: Object  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-flow-description"></a>
A description of the flow.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ExecutionRoleArn`  <a name="cfn-bedrock-flow-executionrolearn"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html) in the Amazon Bedrock User Guide.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/(service-role/)?.+$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flow-name"></a>
The name of the flow.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-flow-tags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TestAliasTags`  <a name="cfn-bedrock-flow-testaliastags"></a>
Property description not available.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-flow-return-values"></a>

### Ref
<a name="aws-resource-bedrock-flow-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Number (ARN) of the flow.

For example, `{ "Ref": "myFlow" }` could return the value `""arn:aws:bedrock:us-east-1:123456789012:flow/FLOW123456""`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-flow-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-flow-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the flow.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the flow was created.

`Id`  <a name="Id-fn::getatt"></a>
The unique identifier of the flow.

`Status`  <a name="Status-fn::getatt"></a>
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](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PrepareFlow.html) 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](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html) request and check the error message in the `validations` field.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the flow was last updated.

`Validations`  <a name="Validations-fn::getatt"></a>
Property description not available.

`Version`  <a name="Version-fn::getatt"></a>
The latest version of the flow.

# AWS::Bedrock::Flow AgentFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-agentflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-agentflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-agentflownodeconfiguration-syntax.json"></a>

```
{
  "[AgentAliasArn](#cfn-bedrock-flow-agentflownodeconfiguration-agentaliasarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-agentflownodeconfiguration-syntax.yaml"></a>

```
  [AgentAliasArn](#cfn-bedrock-flow-agentflownodeconfiguration-agentaliasarn): String
```

## Properties
<a name="aws-properties-bedrock-flow-agentflownodeconfiguration-properties"></a>

`AgentAliasArn`  <a name="cfn-bedrock-flow-agentflownodeconfiguration-agentaliasarn"></a>
The Amazon Resource Name (ARN) of the alias of the agent to invoke.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow ConditionFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-conditionflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-conditionflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-conditionflownodeconfiguration-syntax.json"></a>

```
{
  "[Conditions](#cfn-bedrock-flow-conditionflownodeconfiguration-conditions)" : [ FlowCondition, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-flow-conditionflownodeconfiguration-syntax.yaml"></a>

```
  [Conditions](#cfn-bedrock-flow-conditionflownodeconfiguration-conditions): 
    - FlowCondition
```

## Properties
<a name="aws-properties-bedrock-flow-conditionflownodeconfiguration-properties"></a>

`Conditions`  <a name="cfn-bedrock-flow-conditionflownodeconfiguration-conditions"></a>
An array of conditions. Each member contains the name of a condition and an expression that defines the condition.  
*Required*: Yes  
*Type*: Array of [FlowCondition](aws-properties-bedrock-flow-flowcondition.md)  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FieldForReranking
<a name="aws-properties-bedrock-flow-fieldforreranking"></a>

Specifies a field to be used during the reranking process in a Knowledge Base vector search. This structure identifies metadata fields that should be considered when reordering search results to improve relevance.

## Syntax
<a name="aws-properties-bedrock-flow-fieldforreranking-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-fieldforreranking-syntax.json"></a>

```
{
  "[FieldName](#cfn-bedrock-flow-fieldforreranking-fieldname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-fieldforreranking-syntax.yaml"></a>

```
  [FieldName](#cfn-bedrock-flow-fieldforreranking-fieldname): String
```

## Properties
<a name="aws-properties-bedrock-flow-fieldforreranking-properties"></a>

`FieldName`  <a name="cfn-bedrock-flow-fieldforreranking-fieldname"></a>
The name of the metadata field to be used during the reranking process.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowCondition
<a name="aws-properties-bedrock-flow-flowcondition"></a>

Defines a condition in the condition node.

## Syntax
<a name="aws-properties-bedrock-flow-flowcondition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowcondition-syntax.json"></a>

```
{
  "[Expression](#cfn-bedrock-flow-flowcondition-expression)" : String,
  "[Name](#cfn-bedrock-flow-flowcondition-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowcondition-syntax.yaml"></a>

```
  [Expression](#cfn-bedrock-flow-flowcondition-expression): String
  [Name](#cfn-bedrock-flow-flowcondition-name): String
```

## Properties
<a name="aws-properties-bedrock-flow-flowcondition-properties"></a>

`Expression`  <a name="cfn-bedrock-flow-flowcondition-expression"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-how-it-works.html#flows-nodes).  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flow-flowcondition-name"></a>
A name for the condition that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowConditionalConnectionConfiguration
<a name="aws-properties-bedrock-flow-flowconditionalconnectionconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flow-flowconditionalconnectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowconditionalconnectionconfiguration-syntax.json"></a>

```
{
  "[Condition](#cfn-bedrock-flow-flowconditionalconnectionconfiguration-condition)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowconditionalconnectionconfiguration-syntax.yaml"></a>

```
  [Condition](#cfn-bedrock-flow-flowconditionalconnectionconfiguration-condition): String
```

## Properties
<a name="aws-properties-bedrock-flow-flowconditionalconnectionconfiguration-properties"></a>

`Condition`  <a name="cfn-bedrock-flow-flowconditionalconnectionconfiguration-condition"></a>
The condition that triggers this connection. For more information about how to write conditions, see the **Condition** node type in the [Node types](https://docs.aws.amazon.com/bedrock/latest/userguide/node-types.html) topic in the Amazon Bedrock User Guide.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowConnection
<a name="aws-properties-bedrock-flow-flowconnection"></a>

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

## Syntax
<a name="aws-properties-bedrock-flow-flowconnection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowconnection-syntax.json"></a>

```
{
  "[Configuration](#cfn-bedrock-flow-flowconnection-configuration)" : FlowConnectionConfiguration,
  "[Name](#cfn-bedrock-flow-flowconnection-name)" : String,
  "[Source](#cfn-bedrock-flow-flowconnection-source)" : String,
  "[Target](#cfn-bedrock-flow-flowconnection-target)" : String,
  "[Type](#cfn-bedrock-flow-flowconnection-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowconnection-syntax.yaml"></a>

```
  [Configuration](#cfn-bedrock-flow-flowconnection-configuration): 
    FlowConnectionConfiguration
  [Name](#cfn-bedrock-flow-flowconnection-name): String
  [Source](#cfn-bedrock-flow-flowconnection-source): String
  [Target](#cfn-bedrock-flow-flowconnection-target): String
  [Type](#cfn-bedrock-flow-flowconnection-type): String
```

## Properties
<a name="aws-properties-bedrock-flow-flowconnection-properties"></a>

`Configuration`  <a name="cfn-bedrock-flow-flowconnection-configuration"></a>
The configuration of the connection.  
*Required*: No  
*Type*: [FlowConnectionConfiguration](aws-properties-bedrock-flow-flowconnectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flow-flowconnection-name"></a>
A name for the connection that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Source`  <a name="cfn-bedrock-flow-flowconnection-source"></a>
The node that the connection starts at.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Target`  <a name="cfn-bedrock-flow-flowconnection-target"></a>
The node that the connection ends at.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flow-flowconnection-type"></a>
Whether the source node that the connection begins from is a condition node (`Conditional`) or not (`Data`).  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Data | Conditional`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowConnectionConfiguration
<a name="aws-properties-bedrock-flow-flowconnectionconfiguration"></a>

The configuration of the connection.

## Syntax
<a name="aws-properties-bedrock-flow-flowconnectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowconnectionconfiguration-syntax.json"></a>

```
{
  "[Conditional](#cfn-bedrock-flow-flowconnectionconfiguration-conditional)" : FlowConditionalConnectionConfiguration,
  "[Data](#cfn-bedrock-flow-flowconnectionconfiguration-data)" : FlowDataConnectionConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowconnectionconfiguration-syntax.yaml"></a>

```
  [Conditional](#cfn-bedrock-flow-flowconnectionconfiguration-conditional): 
    FlowConditionalConnectionConfiguration
  [Data](#cfn-bedrock-flow-flowconnectionconfiguration-data): 
    FlowDataConnectionConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-flowconnectionconfiguration-properties"></a>

`Conditional`  <a name="cfn-bedrock-flow-flowconnectionconfiguration-conditional"></a>
The configuration of a connection originating from a Condition node.  
*Required*: No  
*Type*: [FlowConditionalConnectionConfiguration](aws-properties-bedrock-flow-flowconditionalconnectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Data`  <a name="cfn-bedrock-flow-flowconnectionconfiguration-data"></a>
The configuration of a connection originating from a node that isn't a Condition node.  
*Required*: No  
*Type*: [FlowDataConnectionConfiguration](aws-properties-bedrock-flow-flowdataconnectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowDataConnectionConfiguration
<a name="aws-properties-bedrock-flow-flowdataconnectionconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flow-flowdataconnectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowdataconnectionconfiguration-syntax.json"></a>

```
{
  "[SourceOutput](#cfn-bedrock-flow-flowdataconnectionconfiguration-sourceoutput)" : String,
  "[TargetInput](#cfn-bedrock-flow-flowdataconnectionconfiguration-targetinput)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowdataconnectionconfiguration-syntax.yaml"></a>

```
  [SourceOutput](#cfn-bedrock-flow-flowdataconnectionconfiguration-sourceoutput): String
  [TargetInput](#cfn-bedrock-flow-flowdataconnectionconfiguration-targetinput): String
```

## Properties
<a name="aws-properties-bedrock-flow-flowdataconnectionconfiguration-properties"></a>

`SourceOutput`  <a name="cfn-bedrock-flow-flowdataconnectionconfiguration-sourceoutput"></a>
The name of the output in the source node that the connection begins from.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetInput`  <a name="cfn-bedrock-flow-flowdataconnectionconfiguration-targetinput"></a>
The name of the input in the target node that the connection ends at.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowDefinition
<a name="aws-properties-bedrock-flow-flowdefinition"></a>

The definition of the nodes and connections between nodes in the flow.

## Syntax
<a name="aws-properties-bedrock-flow-flowdefinition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowdefinition-syntax.json"></a>

```
{
  "[Connections](#cfn-bedrock-flow-flowdefinition-connections)" : [ FlowConnection, ... ],
  "[Nodes](#cfn-bedrock-flow-flowdefinition-nodes)" : [ FlowNode, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowdefinition-syntax.yaml"></a>

```
  [Connections](#cfn-bedrock-flow-flowdefinition-connections): 
    - FlowConnection
  [Nodes](#cfn-bedrock-flow-flowdefinition-nodes): 
    - FlowNode
```

## Properties
<a name="aws-properties-bedrock-flow-flowdefinition-properties"></a>

`Connections`  <a name="cfn-bedrock-flow-flowdefinition-connections"></a>
An array of connection definitions in the flow.  
*Required*: No  
*Type*: Array of [FlowConnection](aws-properties-bedrock-flow-flowconnection.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Nodes`  <a name="cfn-bedrock-flow-flowdefinition-nodes"></a>
An array of node definitions in the flow.  
*Required*: No  
*Type*: Array of [FlowNode](aws-properties-bedrock-flow-flownode.md)  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowNode
<a name="aws-properties-bedrock-flow-flownode"></a>

Contains configurations about a node in the flow.

## Syntax
<a name="aws-properties-bedrock-flow-flownode-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flownode-syntax.json"></a>

```
{
  "[Configuration](#cfn-bedrock-flow-flownode-configuration)" : FlowNodeConfiguration,
  "[Inputs](#cfn-bedrock-flow-flownode-inputs)" : [ FlowNodeInput, ... ],
  "[Name](#cfn-bedrock-flow-flownode-name)" : String,
  "[Outputs](#cfn-bedrock-flow-flownode-outputs)" : [ FlowNodeOutput, ... ],
  "[Type](#cfn-bedrock-flow-flownode-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flownode-syntax.yaml"></a>

```
  [Configuration](#cfn-bedrock-flow-flownode-configuration): 
    FlowNodeConfiguration
  [Inputs](#cfn-bedrock-flow-flownode-inputs): 
    - FlowNodeInput
  [Name](#cfn-bedrock-flow-flownode-name): String
  [Outputs](#cfn-bedrock-flow-flownode-outputs): 
    - FlowNodeOutput
  [Type](#cfn-bedrock-flow-flownode-type): String
```

## Properties
<a name="aws-properties-bedrock-flow-flownode-properties"></a>

`Configuration`  <a name="cfn-bedrock-flow-flownode-configuration"></a>
Contains configurations for the node.  
*Required*: No  
*Type*: [FlowNodeConfiguration](aws-properties-bedrock-flow-flownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Inputs`  <a name="cfn-bedrock-flow-flownode-inputs"></a>
An array of objects, each of which contains information about an input into the node.  
*Required*: No  
*Type*: Array of [FlowNodeInput](aws-properties-bedrock-flow-flownodeinput.md)  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flow-flownode-name"></a>
A name for the node.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Outputs`  <a name="cfn-bedrock-flow-flownode-outputs"></a>
A list of objects, each of which contains information about an output from the node.  
*Required*: No  
*Type*: Array of [FlowNodeOutput](aws-properties-bedrock-flow-flownodeoutput.md)  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flow-flownode-type"></a>
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.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Input | Output | KnowledgeBase | Condition | Lex | Prompt | LambdaFunction | Agent | Storage | Retrieval | Iterator | Collector | InlineCode | Loop | LoopInput | LoopController`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowNodeConfiguration
<a name="aws-properties-bedrock-flow-flownodeconfiguration"></a>

Contains configurations for a node in your flow. For more information, see [Node types in a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-flownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flownodeconfiguration-syntax.json"></a>

```
{
  "[Agent](#cfn-bedrock-flow-flownodeconfiguration-agent)" : AgentFlowNodeConfiguration,
  "[Collector](#cfn-bedrock-flow-flownodeconfiguration-collector)" : Json,
  "[Condition](#cfn-bedrock-flow-flownodeconfiguration-condition)" : ConditionFlowNodeConfiguration,
  "[InlineCode](#cfn-bedrock-flow-flownodeconfiguration-inlinecode)" : InlineCodeFlowNodeConfiguration,
  "[Input](#cfn-bedrock-flow-flownodeconfiguration-input)" : Json,
  "[Iterator](#cfn-bedrock-flow-flownodeconfiguration-iterator)" : Json,
  "[KnowledgeBase](#cfn-bedrock-flow-flownodeconfiguration-knowledgebase)" : KnowledgeBaseFlowNodeConfiguration,
  "[LambdaFunction](#cfn-bedrock-flow-flownodeconfiguration-lambdafunction)" : LambdaFunctionFlowNodeConfiguration,
  "[Lex](#cfn-bedrock-flow-flownodeconfiguration-lex)" : LexFlowNodeConfiguration,
  "[Loop](#cfn-bedrock-flow-flownodeconfiguration-loop)" : LoopFlowNodeConfiguration,
  "[LoopController](#cfn-bedrock-flow-flownodeconfiguration-loopcontroller)" : LoopControllerFlowNodeConfiguration,
  "[LoopInput](#cfn-bedrock-flow-flownodeconfiguration-loopinput)" : Json,
  "[Output](#cfn-bedrock-flow-flownodeconfiguration-output)" : Json,
  "[Prompt](#cfn-bedrock-flow-flownodeconfiguration-prompt)" : PromptFlowNodeConfiguration,
  "[Retrieval](#cfn-bedrock-flow-flownodeconfiguration-retrieval)" : RetrievalFlowNodeConfiguration,
  "[Storage](#cfn-bedrock-flow-flownodeconfiguration-storage)" : StorageFlowNodeConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-flownodeconfiguration-syntax.yaml"></a>

```
  [Agent](#cfn-bedrock-flow-flownodeconfiguration-agent): 
    AgentFlowNodeConfiguration
  [Collector](#cfn-bedrock-flow-flownodeconfiguration-collector): Json
  [Condition](#cfn-bedrock-flow-flownodeconfiguration-condition): 
    ConditionFlowNodeConfiguration
  [InlineCode](#cfn-bedrock-flow-flownodeconfiguration-inlinecode): 
    InlineCodeFlowNodeConfiguration
  [Input](#cfn-bedrock-flow-flownodeconfiguration-input): Json
  [Iterator](#cfn-bedrock-flow-flownodeconfiguration-iterator): Json
  [KnowledgeBase](#cfn-bedrock-flow-flownodeconfiguration-knowledgebase): 
    KnowledgeBaseFlowNodeConfiguration
  [LambdaFunction](#cfn-bedrock-flow-flownodeconfiguration-lambdafunction): 
    LambdaFunctionFlowNodeConfiguration
  [Lex](#cfn-bedrock-flow-flownodeconfiguration-lex): 
    LexFlowNodeConfiguration
  [Loop](#cfn-bedrock-flow-flownodeconfiguration-loop): 
    LoopFlowNodeConfiguration
  [LoopController](#cfn-bedrock-flow-flownodeconfiguration-loopcontroller): 
    LoopControllerFlowNodeConfiguration
  [LoopInput](#cfn-bedrock-flow-flownodeconfiguration-loopinput): Json
  [Output](#cfn-bedrock-flow-flownodeconfiguration-output): Json
  [Prompt](#cfn-bedrock-flow-flownodeconfiguration-prompt): 
    PromptFlowNodeConfiguration
  [Retrieval](#cfn-bedrock-flow-flownodeconfiguration-retrieval): 
    RetrievalFlowNodeConfiguration
  [Storage](#cfn-bedrock-flow-flownodeconfiguration-storage): 
    StorageFlowNodeConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-flownodeconfiguration-properties"></a>

`Agent`  <a name="cfn-bedrock-flow-flownodeconfiguration-agent"></a>
Contains configurations for an agent node in your flow. Invokes an alias of an agent and returns the response.  
*Required*: No  
*Type*: [AgentFlowNodeConfiguration](aws-properties-bedrock-flow-agentflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Collector`  <a name="cfn-bedrock-flow-flownodeconfiguration-collector"></a>
Contains configurations for a collector node in your flow. Collects an iteration of inputs and consolidates them into an array of outputs.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Condition`  <a name="cfn-bedrock-flow-flownodeconfiguration-condition"></a>
Contains configurations for a condition node in your flow. Defines conditions that lead to different branches of the flow.  
*Required*: No  
*Type*: [ConditionFlowNodeConfiguration](aws-properties-bedrock-flow-conditionflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InlineCode`  <a name="cfn-bedrock-flow-flownodeconfiguration-inlinecode"></a>
Contains configurations for an inline code node in your flow. Inline code nodes let you write and execute code directly within your flow, enabling data transformations, custom logic, and integrations without needing an external Lambda function.  
*Required*: No  
*Type*: [InlineCodeFlowNodeConfiguration](aws-properties-bedrock-flow-inlinecodeflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Input`  <a name="cfn-bedrock-flow-flownodeconfiguration-input"></a>
Contains configurations for an input flow node in your flow. The first node in the flow. `inputs` can't be specified for this node.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Iterator`  <a name="cfn-bedrock-flow-flownodeconfiguration-iterator"></a>
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.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBase`  <a name="cfn-bedrock-flow-flownodeconfiguration-knowledgebase"></a>
Contains configurations for a knowledge base node in your flow. Queries a knowledge base and returns the retrieved results or generated response.  
*Required*: No  
*Type*: [KnowledgeBaseFlowNodeConfiguration](aws-properties-bedrock-flow-knowledgebaseflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LambdaFunction`  <a name="cfn-bedrock-flow-flownodeconfiguration-lambdafunction"></a>
Contains configurations for a Lambda function node in your flow. Invokes an AWS Lambda function.  
*Required*: No  
*Type*: [LambdaFunctionFlowNodeConfiguration](aws-properties-bedrock-flow-lambdafunctionflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Lex`  <a name="cfn-bedrock-flow-flownodeconfiguration-lex"></a>
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.  
*Required*: No  
*Type*: [LexFlowNodeConfiguration](aws-properties-bedrock-flow-lexflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Loop`  <a name="cfn-bedrock-flow-flownodeconfiguration-loop"></a>
Contains configurations for a DoWhile loop in your flow.  
*Required*: No  
*Type*: [LoopFlowNodeConfiguration](aws-properties-bedrock-flow-loopflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LoopController`  <a name="cfn-bedrock-flow-flownodeconfiguration-loopcontroller"></a>
Contains controller node configurations for a DoWhile loop in your flow.  
*Required*: No  
*Type*: [LoopControllerFlowNodeConfiguration](aws-properties-bedrock-flow-loopcontrollerflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LoopInput`  <a name="cfn-bedrock-flow-flownodeconfiguration-loopinput"></a>
Contains input node configurations for a DoWhile loop in your flow.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Output`  <a name="cfn-bedrock-flow-flownodeconfiguration-output"></a>
Contains configurations for an output flow node in your flow. The last node in the flow. `outputs` can't be specified for this node.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Prompt`  <a name="cfn-bedrock-flow-flownodeconfiguration-prompt"></a>
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.  
*Required*: No  
*Type*: [PromptFlowNodeConfiguration](aws-properties-bedrock-flow-promptflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Retrieval`  <a name="cfn-bedrock-flow-flownodeconfiguration-retrieval"></a>
Contains configurations for a retrieval node in your flow. Retrieves data from an Amazon S3 location and returns it as the output.  
*Required*: No  
*Type*: [RetrievalFlowNodeConfiguration](aws-properties-bedrock-flow-retrievalflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Storage`  <a name="cfn-bedrock-flow-flownodeconfiguration-storage"></a>
Contains configurations for a storage node in your flow. Stores an input in an Amazon S3 location.  
*Required*: No  
*Type*: [StorageFlowNodeConfiguration](aws-properties-bedrock-flow-storageflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowNodeInput
<a name="aws-properties-bedrock-flow-flownodeinput"></a>

Contains configurations for an input in an Amazon Bedrock Flows node.

## Syntax
<a name="aws-properties-bedrock-flow-flownodeinput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flownodeinput-syntax.json"></a>

```
{
  "[Category](#cfn-bedrock-flow-flownodeinput-category)" : String,
  "[Expression](#cfn-bedrock-flow-flownodeinput-expression)" : String,
  "[Name](#cfn-bedrock-flow-flownodeinput-name)" : String,
  "[Type](#cfn-bedrock-flow-flownodeinput-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flownodeinput-syntax.yaml"></a>

```
  [Category](#cfn-bedrock-flow-flownodeinput-category): String
  [Expression](#cfn-bedrock-flow-flownodeinput-expression): String
  [Name](#cfn-bedrock-flow-flownodeinput-name): String
  [Type](#cfn-bedrock-flow-flownodeinput-type): String
```

## Properties
<a name="aws-properties-bedrock-flow-flownodeinput-properties"></a>

`Category`  <a name="cfn-bedrock-flow-flownodeinput-category"></a>
Specifies how input data flows between iterations in a DoWhile loop.  
+ `LoopCondition` - Controls whether the loop continues by evaluating condition expressions against the input data. Use this category to define the condition that determines if the loop should continue. 
+ `ReturnValueToLoopStart` - Defines data to pass back to the start of the loop's next iteration. Use this category for variables that you want to update for each loop iteration.
+ `ExitLoop` - Defines the value that's available once the loop ends. Use this category to expose loop results to nodes outside the loop.
*Required*: No  
*Type*: String  
*Allowed values*: `LoopCondition | ReturnValueToLoopStart | ExitLoop`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Expression`  <a name="cfn-bedrock-flow-flownodeinput-expression"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-expressions.html).  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flow-flownodeinput-name"></a>
Specifies a name for the input that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flow-flownodeinput-type"></a>
Specifies the data type of the input. If the input doesn't match this type at runtime, a validation error will be thrown.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `String | Number | Boolean | Object | Array`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowNodeOutput
<a name="aws-properties-bedrock-flow-flownodeoutput"></a>

Contains configurations for an output from a node.

## Syntax
<a name="aws-properties-bedrock-flow-flownodeoutput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flownodeoutput-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-flow-flownodeoutput-name)" : String,
  "[Type](#cfn-bedrock-flow-flownodeoutput-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flownodeoutput-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-flow-flownodeoutput-name): String
  [Type](#cfn-bedrock-flow-flownodeoutput-type): String
```

## Properties
<a name="aws-properties-bedrock-flow-flownodeoutput-properties"></a>

`Name`  <a name="cfn-bedrock-flow-flownodeoutput-name"></a>
A name for the output that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flow-flownodeoutput-type"></a>
The data type of the output. If the output doesn't match this type at runtime, a validation error will be thrown.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `String | Number | Boolean | Object | Array`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow FlowValidation
<a name="aws-properties-bedrock-flow-flowvalidation"></a>

Contains information about validation of the flow.

This data type is used in the following API operations:
+  [GetFlow response](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlow.html#API_agent_GetFlow_ResponseSyntax) 
+  [GetFlowVersion response](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_GetFlowVersion.html#API_agent_GetFlowVersion_ResponseSyntax) 

## Syntax
<a name="aws-properties-bedrock-flow-flowvalidation-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-flowvalidation-syntax.json"></a>

```
{
  "[Message](#cfn-bedrock-flow-flowvalidation-message)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-flowvalidation-syntax.yaml"></a>

```
  [Message](#cfn-bedrock-flow-flowvalidation-message): String
```

## Properties
<a name="aws-properties-bedrock-flow-flowvalidation-properties"></a>

`Message`  <a name="cfn-bedrock-flow-flowvalidation-message"></a>
A message describing the validation error.  
*Required*: Yes  
*Type*: String  
*Pattern*: `[\s\S]+`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow GuardrailConfiguration
<a name="aws-properties-bedrock-flow-guardrailconfiguration"></a>

Configuration information for a guardrail that you use with the [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) operation.

## Syntax
<a name="aws-properties-bedrock-flow-guardrailconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-guardrailconfiguration-syntax.json"></a>

```
{
  "[GuardrailIdentifier](#cfn-bedrock-flow-guardrailconfiguration-guardrailidentifier)" : String,
  "[GuardrailVersion](#cfn-bedrock-flow-guardrailconfiguration-guardrailversion)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-guardrailconfiguration-syntax.yaml"></a>

```
  [GuardrailIdentifier](#cfn-bedrock-flow-guardrailconfiguration-guardrailidentifier): String
  [GuardrailVersion](#cfn-bedrock-flow-guardrailconfiguration-guardrailversion): String
```

## Properties
<a name="aws-properties-bedrock-flow-guardrailconfiguration-properties"></a>

`GuardrailIdentifier`  <a name="cfn-bedrock-flow-guardrailconfiguration-guardrailidentifier"></a>
The identifier for the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GuardrailVersion`  <a name="cfn-bedrock-flow-guardrailconfiguration-guardrailversion"></a>
The version of the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^(([0-9]{1,8})|(DRAFT))$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow InlineCodeFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-inlinecodeflownodeconfiguration"></a>

Contains configurations for an inline code node in your flow. Inline code nodes let you write and execute code directly within your flow, enabling data transformations, custom logic, and integrations without needing an external Lambda function.

## Syntax
<a name="aws-properties-bedrock-flow-inlinecodeflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-inlinecodeflownodeconfiguration-syntax.json"></a>

```
{
  "[Code](#cfn-bedrock-flow-inlinecodeflownodeconfiguration-code)" : String,
  "[Language](#cfn-bedrock-flow-inlinecodeflownodeconfiguration-language)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-inlinecodeflownodeconfiguration-syntax.yaml"></a>

```
  [Code](#cfn-bedrock-flow-inlinecodeflownodeconfiguration-code): String
  [Language](#cfn-bedrock-flow-inlinecodeflownodeconfiguration-language): String
```

## Properties
<a name="aws-properties-bedrock-flow-inlinecodeflownodeconfiguration-properties"></a>

`Code`  <a name="cfn-bedrock-flow-inlinecodeflownodeconfiguration-code"></a>
The code that's executed in your inline code node. The code can access input data from previous nodes in the flow, perform operations on that data, and produce output that can be used by other nodes in your flow.  
The code must be valid in the programming `language` that you specify.  
*Required*: Yes  
*Type*: String  
*Maximum*: `5000000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Language`  <a name="cfn-bedrock-flow-inlinecodeflownodeconfiguration-language"></a>
The programming language used by your inline code node.  
The code must be valid in the programming `language` that you specify. Currently, only Python 3 (`Python_3`) is supported.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Python_3`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow KnowledgeBaseFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-knowledgebaseflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-knowledgebaseflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-knowledgebaseflownodeconfiguration-syntax.json"></a>

```
{
  "[GuardrailConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-guardrailconfiguration)" : GuardrailConfiguration,
  "[InferenceConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-inferenceconfiguration)" : PromptInferenceConfiguration,
  "[KnowledgeBaseId](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-knowledgebaseid)" : String,
  "[ModelId](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-modelid)" : String,
  "[NumberOfResults](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-numberofresults)" : Number,
  "[OrchestrationConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-orchestrationconfiguration)" : KnowledgeBaseOrchestrationConfiguration,
  "[PromptTemplate](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-prompttemplate)" : KnowledgeBasePromptTemplate,
  "[RerankingConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-rerankingconfiguration)" : VectorSearchRerankingConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-knowledgebaseflownodeconfiguration-syntax.yaml"></a>

```
  [GuardrailConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-guardrailconfiguration): 
    GuardrailConfiguration
  [InferenceConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-inferenceconfiguration): 
    PromptInferenceConfiguration
  [KnowledgeBaseId](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-knowledgebaseid): String
  [ModelId](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-modelid): String
  [NumberOfResults](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-numberofresults): 
    Number
  [OrchestrationConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-orchestrationconfiguration): 
    KnowledgeBaseOrchestrationConfiguration
  [PromptTemplate](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-prompttemplate): 
    KnowledgeBasePromptTemplate
  [RerankingConfiguration](#cfn-bedrock-flow-knowledgebaseflownodeconfiguration-rerankingconfiguration): 
    VectorSearchRerankingConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-knowledgebaseflownodeconfiguration-properties"></a>

`GuardrailConfiguration`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-guardrailconfiguration"></a>
Contains configurations for a guardrail to apply during query and response generation for the knowledge base in this configuration.  
*Required*: No  
*Type*: [GuardrailConfiguration](aws-properties-bedrock-flow-guardrailconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfiguration`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-inferenceconfiguration"></a>
Contains inference configurations for the prompt.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-flow-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBaseId`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-knowledgebaseid"></a>
The unique identifier of the knowledge base to query.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z]+$`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelId`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-modelid"></a>
The unique identifier of the model or [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html) to use to generate a response from the query results. Omit this field if you want to return the retrieved results as an array.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NumberOfResults`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-numberofresults"></a>
The number of results to retrieve from the knowledge base.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OrchestrationConfiguration`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-orchestrationconfiguration"></a>
The configuration for orchestrating the retrieval and generation process in the knowledge base node.  
*Required*: No  
*Type*: [KnowledgeBaseOrchestrationConfiguration](aws-properties-bedrock-flow-knowledgebaseorchestrationconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptTemplate`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-prompttemplate"></a>
A custom prompt template to use with the knowledge base for generating responses.  
*Required*: No  
*Type*: [KnowledgeBasePromptTemplate](aws-properties-bedrock-flow-knowledgebaseprompttemplate.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RerankingConfiguration`  <a name="cfn-bedrock-flow-knowledgebaseflownodeconfiguration-rerankingconfiguration"></a>
The configuration for reranking the retrieved results from the knowledge base to improve relevance.  
*Required*: No  
*Type*: [VectorSearchRerankingConfiguration](aws-properties-bedrock-flow-vectorsearchrerankingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow KnowledgeBaseOrchestrationConfiguration
<a name="aws-properties-bedrock-flow-knowledgebaseorchestrationconfiguration"></a>

Configures how the knowledge base orchestrates the retrieval and generation process, allowing for customization of prompts, inference parameters, and performance settings.

## Syntax
<a name="aws-properties-bedrock-flow-knowledgebaseorchestrationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-knowledgebaseorchestrationconfiguration-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-additionalmodelrequestfields)" : Json,
  "[InferenceConfig](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-inferenceconfig)" : PromptInferenceConfiguration,
  "[PerformanceConfig](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-performanceconfig)" : PerformanceConfiguration,
  "[PromptTemplate](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-prompttemplate)" : KnowledgeBasePromptTemplate
}
```

### YAML
<a name="aws-properties-bedrock-flow-knowledgebaseorchestrationconfiguration-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-additionalmodelrequestfields): Json
  [InferenceConfig](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-inferenceconfig): 
    PromptInferenceConfiguration
  [PerformanceConfig](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-performanceconfig): 
    PerformanceConfiguration
  [PromptTemplate](#cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-prompttemplate): 
    KnowledgeBasePromptTemplate
```

## Properties
<a name="aws-properties-bedrock-flow-knowledgebaseorchestrationconfiguration-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-additionalmodelrequestfields"></a>
The additional model-specific request parameters as key-value pairs to be included in the request to the foundation model.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfig`  <a name="cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-inferenceconfig"></a>
Contains inference configurations for the prompt.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-flow-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PerformanceConfig`  <a name="cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-performanceconfig"></a>
The performance configuration options for the knowledge base retrieval and generation process.  
*Required*: No  
*Type*: [PerformanceConfiguration](aws-properties-bedrock-flow-performanceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptTemplate`  <a name="cfn-bedrock-flow-knowledgebaseorchestrationconfiguration-prompttemplate"></a>
A custom prompt template for orchestrating the retrieval and generation process.  
*Required*: No  
*Type*: [KnowledgeBasePromptTemplate](aws-properties-bedrock-flow-knowledgebaseprompttemplate.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow KnowledgeBasePromptTemplate
<a name="aws-properties-bedrock-flow-knowledgebaseprompttemplate"></a>

Defines a custom prompt template for orchestrating the retrieval and generation process.

## Syntax
<a name="aws-properties-bedrock-flow-knowledgebaseprompttemplate-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-knowledgebaseprompttemplate-syntax.json"></a>

```
{
  "[TextPromptTemplate](#cfn-bedrock-flow-knowledgebaseprompttemplate-textprompttemplate)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-knowledgebaseprompttemplate-syntax.yaml"></a>

```
  [TextPromptTemplate](#cfn-bedrock-flow-knowledgebaseprompttemplate-textprompttemplate): String
```

## Properties
<a name="aws-properties-bedrock-flow-knowledgebaseprompttemplate-properties"></a>

`TextPromptTemplate`  <a name="cfn-bedrock-flow-knowledgebaseprompttemplate-textprompttemplate"></a>
The text of the prompt template.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow LambdaFunctionFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-lambdafunctionflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-lambdafunctionflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-lambdafunctionflownodeconfiguration-syntax.json"></a>

```
{
  "[LambdaArn](#cfn-bedrock-flow-lambdafunctionflownodeconfiguration-lambdaarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-lambdafunctionflownodeconfiguration-syntax.yaml"></a>

```
  [LambdaArn](#cfn-bedrock-flow-lambdafunctionflownodeconfiguration-lambdaarn): String
```

## Properties
<a name="aws-properties-bedrock-flow-lambdafunctionflownodeconfiguration-properties"></a>

`LambdaArn`  <a name="cfn-bedrock-flow-lambdafunctionflownodeconfiguration-lambdaarn"></a>
The Amazon Resource Name (ARN) of the Lambda function to invoke.  
*Required*: Yes  
*Type*: String  
*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-_]+))?$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow LexFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-lexflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-lexflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-lexflownodeconfiguration-syntax.json"></a>

```
{
  "[BotAliasArn](#cfn-bedrock-flow-lexflownodeconfiguration-botaliasarn)" : String,
  "[LocaleId](#cfn-bedrock-flow-lexflownodeconfiguration-localeid)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-lexflownodeconfiguration-syntax.yaml"></a>

```
  [BotAliasArn](#cfn-bedrock-flow-lexflownodeconfiguration-botaliasarn): String
  [LocaleId](#cfn-bedrock-flow-lexflownodeconfiguration-localeid): String
```

## Properties
<a name="aws-properties-bedrock-flow-lexflownodeconfiguration-properties"></a>

`BotAliasArn`  <a name="cfn-bedrock-flow-lexflownodeconfiguration-botaliasarn"></a>
The Amazon Resource Name (ARN) of the Amazon Lex bot alias to invoke.  
*Required*: Yes  
*Type*: String  
*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]+$`  
*Maximum*: `78`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LocaleId`  <a name="cfn-bedrock-flow-lexflownodeconfiguration-localeid"></a>
The Region to invoke the Amazon Lex bot in.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow LoopControllerFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-loopcontrollerflownodeconfiguration"></a>

Contains configurations for the controller node of a DoWhile loop in the flow.

## Syntax
<a name="aws-properties-bedrock-flow-loopcontrollerflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-loopcontrollerflownodeconfiguration-syntax.json"></a>

```
{
  "[ContinueCondition](#cfn-bedrock-flow-loopcontrollerflownodeconfiguration-continuecondition)" : FlowCondition,
  "[MaxIterations](#cfn-bedrock-flow-loopcontrollerflownodeconfiguration-maxiterations)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-flow-loopcontrollerflownodeconfiguration-syntax.yaml"></a>

```
  [ContinueCondition](#cfn-bedrock-flow-loopcontrollerflownodeconfiguration-continuecondition): 
    FlowCondition
  [MaxIterations](#cfn-bedrock-flow-loopcontrollerflownodeconfiguration-maxiterations): Number
```

## Properties
<a name="aws-properties-bedrock-flow-loopcontrollerflownodeconfiguration-properties"></a>

`ContinueCondition`  <a name="cfn-bedrock-flow-loopcontrollerflownodeconfiguration-continuecondition"></a>
Specifies the condition that determines when the flow exits the DoWhile loop. The loop executes until this condition evaluates to true.  
*Required*: Yes  
*Type*: [FlowCondition](aws-properties-bedrock-flow-flowcondition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxIterations`  <a name="cfn-bedrock-flow-loopcontrollerflownodeconfiguration-maxiterations"></a>
Specifies the maximum number of times the DoWhile loop can iterate before the flow exits the loop.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow LoopFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-loopflownodeconfiguration"></a>

Contains configurations for the nodes of a DoWhile loop in your flow.

A DoWhile loop is made up of the following nodes:
+ `Loop` - The container node that holds the loop's flow definition. This node encompasses the entire loop structure.
+ `LoopInput` - The entry point node for the loop. This node receives inputs from nodes outside the loop and from previous loop iterations.
+ Body nodes - The processing nodes that execute within each loop iteration. These can be nodes for handling data in your flow, such as a prompt or Lambda function nodes. Some node types aren't supported inside a DoWhile loop body. For more information, see [LoopIncompatibleNodeTypeFlowValidationDetails](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_LoopIncompatibleNodeTypeFlowValidationDetails.html).
+ `LoopController` - The node that evaluates whether the loop should continue or exit based on a condition.

These nodes work together to create a loop that runs at least once and continues until a specified condition is met or a maximum number of iterations is reached.

## Syntax
<a name="aws-properties-bedrock-flow-loopflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-loopflownodeconfiguration-syntax.json"></a>

```
{
  "[Definition](#cfn-bedrock-flow-loopflownodeconfiguration-definition)" : FlowDefinition
}
```

### YAML
<a name="aws-properties-bedrock-flow-loopflownodeconfiguration-syntax.yaml"></a>

```
  [Definition](#cfn-bedrock-flow-loopflownodeconfiguration-definition): 
    FlowDefinition
```

## Properties
<a name="aws-properties-bedrock-flow-loopflownodeconfiguration-properties"></a>

`Definition`  <a name="cfn-bedrock-flow-loopflownodeconfiguration-definition"></a>
The definition of the DoWhile loop nodes and connections between nodes in the flow.  
*Required*: Yes  
*Type*: [FlowDefinition](aws-properties-bedrock-flow-flowdefinition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow MetadataConfigurationForReranking
<a name="aws-properties-bedrock-flow-metadataconfigurationforreranking"></a>

Configuration for how metadata should be used during the reranking process in Knowledge Base vector searches. This determines which metadata fields are included or excluded when reordering search results.

## Syntax
<a name="aws-properties-bedrock-flow-metadataconfigurationforreranking-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-metadataconfigurationforreranking-syntax.json"></a>

```
{
  "[SelectionMode](#cfn-bedrock-flow-metadataconfigurationforreranking-selectionmode)" : String,
  "[SelectiveModeConfiguration](#cfn-bedrock-flow-metadataconfigurationforreranking-selectivemodeconfiguration)" : RerankingMetadataSelectiveModeConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-metadataconfigurationforreranking-syntax.yaml"></a>

```
  [SelectionMode](#cfn-bedrock-flow-metadataconfigurationforreranking-selectionmode): String
  [SelectiveModeConfiguration](#cfn-bedrock-flow-metadataconfigurationforreranking-selectivemodeconfiguration): 
    RerankingMetadataSelectiveModeConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-metadataconfigurationforreranking-properties"></a>

`SelectionMode`  <a name="cfn-bedrock-flow-metadataconfigurationforreranking-selectionmode"></a>
The mode for selecting which metadata fields to include in the reranking process. Valid values are ALL (use all available metadata fields) or SELECTIVE (use only specified fields).  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SELECTIVE | ALL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SelectiveModeConfiguration`  <a name="cfn-bedrock-flow-metadataconfigurationforreranking-selectivemodeconfiguration"></a>
Configuration for selective mode, which allows you to explicitly include or exclude specific metadata fields during reranking. This is only used when selectionMode is set to SELECTIVE.  
*Required*: No  
*Type*: [RerankingMetadataSelectiveModeConfiguration](aws-properties-bedrock-flow-rerankingmetadataselectivemodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PerformanceConfiguration
<a name="aws-properties-bedrock-flow-performanceconfiguration"></a>

Performance settings for a model.

## Syntax
<a name="aws-properties-bedrock-flow-performanceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-performanceconfiguration-syntax.json"></a>

```
{
  "[Latency](#cfn-bedrock-flow-performanceconfiguration-latency)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-performanceconfiguration-syntax.yaml"></a>

```
  [Latency](#cfn-bedrock-flow-performanceconfiguration-latency): String
```

## Properties
<a name="aws-properties-bedrock-flow-performanceconfiguration-properties"></a>

`Latency`  <a name="cfn-bedrock-flow-performanceconfiguration-latency"></a>
To use a latency-optimized version of the model, set to `optimized`.  
*Required*: No  
*Type*: String  
*Allowed values*: `standard | optimized`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-promptflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flow-promptflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptflownodeconfiguration-syntax.json"></a>

```
{
  "[GuardrailConfiguration](#cfn-bedrock-flow-promptflownodeconfiguration-guardrailconfiguration)" : GuardrailConfiguration,
  "[SourceConfiguration](#cfn-bedrock-flow-promptflownodeconfiguration-sourceconfiguration)" : PromptFlowNodeSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptflownodeconfiguration-syntax.yaml"></a>

```
  [GuardrailConfiguration](#cfn-bedrock-flow-promptflownodeconfiguration-guardrailconfiguration): 
    GuardrailConfiguration
  [SourceConfiguration](#cfn-bedrock-flow-promptflownodeconfiguration-sourceconfiguration): 
    PromptFlowNodeSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-promptflownodeconfiguration-properties"></a>

`GuardrailConfiguration`  <a name="cfn-bedrock-flow-promptflownodeconfiguration-guardrailconfiguration"></a>
Contains configurations for a guardrail to apply to the prompt in this node and the response generated from it.  
*Required*: No  
*Type*: [GuardrailConfiguration](aws-properties-bedrock-flow-guardrailconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceConfiguration`  <a name="cfn-bedrock-flow-promptflownodeconfiguration-sourceconfiguration"></a>
Specifies whether the prompt is from Prompt management or defined inline.  
*Required*: Yes  
*Type*: [PromptFlowNodeSourceConfiguration](aws-properties-bedrock-flow-promptflownodesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptFlowNodeInlineConfiguration
<a name="aws-properties-bedrock-flow-promptflownodeinlineconfiguration"></a>

Contains configurations for a prompt defined inline in the node.

## Syntax
<a name="aws-properties-bedrock-flow-promptflownodeinlineconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptflownodeinlineconfiguration-syntax.json"></a>

```
{
  "[InferenceConfiguration](#cfn-bedrock-flow-promptflownodeinlineconfiguration-inferenceconfiguration)" : PromptInferenceConfiguration,
  "[ModelId](#cfn-bedrock-flow-promptflownodeinlineconfiguration-modelid)" : String,
  "[TemplateConfiguration](#cfn-bedrock-flow-promptflownodeinlineconfiguration-templateconfiguration)" : PromptTemplateConfiguration,
  "[TemplateType](#cfn-bedrock-flow-promptflownodeinlineconfiguration-templatetype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptflownodeinlineconfiguration-syntax.yaml"></a>

```
  [InferenceConfiguration](#cfn-bedrock-flow-promptflownodeinlineconfiguration-inferenceconfiguration): 
    PromptInferenceConfiguration
  [ModelId](#cfn-bedrock-flow-promptflownodeinlineconfiguration-modelid): String
  [TemplateConfiguration](#cfn-bedrock-flow-promptflownodeinlineconfiguration-templateconfiguration): 
    PromptTemplateConfiguration
  [TemplateType](#cfn-bedrock-flow-promptflownodeinlineconfiguration-templatetype): String
```

## Properties
<a name="aws-properties-bedrock-flow-promptflownodeinlineconfiguration-properties"></a>

`InferenceConfiguration`  <a name="cfn-bedrock-flow-promptflownodeinlineconfiguration-inferenceconfiguration"></a>
Contains inference configurations for the prompt.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-flow-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelId`  <a name="cfn-bedrock-flow-promptflownodeinlineconfiguration-modelid"></a>
The unique identifier of the model or [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html) to run inference with.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateConfiguration`  <a name="cfn-bedrock-flow-promptflownodeinlineconfiguration-templateconfiguration"></a>
Contains a prompt and variables in the prompt that can be replaced with values at runtime.  
*Required*: Yes  
*Type*: [PromptTemplateConfiguration](aws-properties-bedrock-flow-prompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateType`  <a name="cfn-bedrock-flow-promptflownodeinlineconfiguration-templatetype"></a>
The type of prompt template.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `TEXT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptFlowNodeResourceConfiguration
<a name="aws-properties-bedrock-flow-promptflownoderesourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flow-promptflownoderesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptflownoderesourceconfiguration-syntax.json"></a>

```
{
  "[PromptArn](#cfn-bedrock-flow-promptflownoderesourceconfiguration-promptarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptflownoderesourceconfiguration-syntax.yaml"></a>

```
  [PromptArn](#cfn-bedrock-flow-promptflownoderesourceconfiguration-promptarn): String
```

## Properties
<a name="aws-properties-bedrock-flow-promptflownoderesourceconfiguration-properties"></a>

`PromptArn`  <a name="cfn-bedrock-flow-promptflownoderesourceconfiguration-promptarn"></a>
The Amazon Resource Name (ARN) of the prompt from Prompt management.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}(?::[0-9]{1,5})?)$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptFlowNodeSourceConfiguration
<a name="aws-properties-bedrock-flow-promptflownodesourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flow-promptflownodesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptflownodesourceconfiguration-syntax.json"></a>

```
{
  "[Inline](#cfn-bedrock-flow-promptflownodesourceconfiguration-inline)" : PromptFlowNodeInlineConfiguration,
  "[Resource](#cfn-bedrock-flow-promptflownodesourceconfiguration-resource)" : PromptFlowNodeResourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptflownodesourceconfiguration-syntax.yaml"></a>

```
  [Inline](#cfn-bedrock-flow-promptflownodesourceconfiguration-inline): 
    PromptFlowNodeInlineConfiguration
  [Resource](#cfn-bedrock-flow-promptflownodesourceconfiguration-resource): 
    PromptFlowNodeResourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-promptflownodesourceconfiguration-properties"></a>

`Inline`  <a name="cfn-bedrock-flow-promptflownodesourceconfiguration-inline"></a>
Contains configurations for a prompt that is defined inline  
*Required*: No  
*Type*: [PromptFlowNodeInlineConfiguration](aws-properties-bedrock-flow-promptflownodeinlineconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Resource`  <a name="cfn-bedrock-flow-promptflownodesourceconfiguration-resource"></a>
Contains configurations for a prompt from Prompt management.  
*Required*: No  
*Type*: [PromptFlowNodeResourceConfiguration](aws-properties-bedrock-flow-promptflownoderesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptInferenceConfiguration
<a name="aws-properties-bedrock-flow-promptinferenceconfiguration"></a>

Contains inference configurations for the prompt.

## Syntax
<a name="aws-properties-bedrock-flow-promptinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptinferenceconfiguration-syntax.json"></a>

```
{
  "[Text](#cfn-bedrock-flow-promptinferenceconfiguration-text)" : PromptModelInferenceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptinferenceconfiguration-syntax.yaml"></a>

```
  [Text](#cfn-bedrock-flow-promptinferenceconfiguration-text): 
    PromptModelInferenceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-promptinferenceconfiguration-properties"></a>

`Text`  <a name="cfn-bedrock-flow-promptinferenceconfiguration-text"></a>
Contains inference configurations for a text prompt.  
*Required*: Yes  
*Type*: [PromptModelInferenceConfiguration](aws-properties-bedrock-flow-promptmodelinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptInputVariable
<a name="aws-properties-bedrock-flow-promptinputvariable"></a>

Contains information about a variable in the prompt.

## Syntax
<a name="aws-properties-bedrock-flow-promptinputvariable-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptinputvariable-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-flow-promptinputvariable-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptinputvariable-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-flow-promptinputvariable-name): String
```

## Properties
<a name="aws-properties-bedrock-flow-promptinputvariable-properties"></a>

`Name`  <a name="cfn-bedrock-flow-promptinputvariable-name"></a>
The name of the variable.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptModelInferenceConfiguration
<a name="aws-properties-bedrock-flow-promptmodelinferenceconfiguration"></a>

Contains inference configurations related to model inference for a prompt. For more information, see [Inference parameters](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-parameters.html).

## Syntax
<a name="aws-properties-bedrock-flow-promptmodelinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-promptmodelinferenceconfiguration-syntax.json"></a>

```
{
  "[MaxTokens](#cfn-bedrock-flow-promptmodelinferenceconfiguration-maxtokens)" : Number,
  "[StopSequences](#cfn-bedrock-flow-promptmodelinferenceconfiguration-stopsequences)" : [ String, ... ],
  "[Temperature](#cfn-bedrock-flow-promptmodelinferenceconfiguration-temperature)" : Number,
  "[TopP](#cfn-bedrock-flow-promptmodelinferenceconfiguration-topp)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-flow-promptmodelinferenceconfiguration-syntax.yaml"></a>

```
  [MaxTokens](#cfn-bedrock-flow-promptmodelinferenceconfiguration-maxtokens): Number
  [StopSequences](#cfn-bedrock-flow-promptmodelinferenceconfiguration-stopsequences): 
    - String
  [Temperature](#cfn-bedrock-flow-promptmodelinferenceconfiguration-temperature): Number
  [TopP](#cfn-bedrock-flow-promptmodelinferenceconfiguration-topp): Number
```

## Properties
<a name="aws-properties-bedrock-flow-promptmodelinferenceconfiguration-properties"></a>

`MaxTokens`  <a name="cfn-bedrock-flow-promptmodelinferenceconfiguration-maxtokens"></a>
The maximum number of tokens to return in the response.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `4096`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StopSequences`  <a name="cfn-bedrock-flow-promptmodelinferenceconfiguration-stopsequences"></a>
A list of strings that define sequences after which the model will stop generating.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `4`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Temperature`  <a name="cfn-bedrock-flow-promptmodelinferenceconfiguration-temperature"></a>
Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopP`  <a name="cfn-bedrock-flow-promptmodelinferenceconfiguration-topp"></a>
The percentage of most-likely candidates that the model considers for the next token.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow PromptTemplateConfiguration
<a name="aws-properties-bedrock-flow-prompttemplateconfiguration"></a>

Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html).

## Syntax
<a name="aws-properties-bedrock-flow-prompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-prompttemplateconfiguration-syntax.json"></a>

```
{
  "[Text](#cfn-bedrock-flow-prompttemplateconfiguration-text)" : TextPromptTemplateConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-prompttemplateconfiguration-syntax.yaml"></a>

```
  [Text](#cfn-bedrock-flow-prompttemplateconfiguration-text): 
    TextPromptTemplateConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-prompttemplateconfiguration-properties"></a>

`Text`  <a name="cfn-bedrock-flow-prompttemplateconfiguration-text"></a>
Contains configurations for the text in a message for a prompt.  
*Required*: Yes  
*Type*: [TextPromptTemplateConfiguration](aws-properties-bedrock-flow-textprompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow RerankingMetadataSelectiveModeConfiguration
<a name="aws-properties-bedrock-flow-rerankingmetadataselectivemodeconfiguration"></a>

Configuration for selectively including or excluding metadata fields during the reranking process. This allows you to control which metadata attributes are considered when reordering search results.

## Syntax
<a name="aws-properties-bedrock-flow-rerankingmetadataselectivemodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-rerankingmetadataselectivemodeconfiguration-syntax.json"></a>

```
{
  "[FieldsToExclude](#cfn-bedrock-flow-rerankingmetadataselectivemodeconfiguration-fieldstoexclude)" : [ FieldForReranking, ... ],
  "[FieldsToInclude](#cfn-bedrock-flow-rerankingmetadataselectivemodeconfiguration-fieldstoinclude)" : [ FieldForReranking, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-flow-rerankingmetadataselectivemodeconfiguration-syntax.yaml"></a>

```
  [FieldsToExclude](#cfn-bedrock-flow-rerankingmetadataselectivemodeconfiguration-fieldstoexclude): 
    - FieldForReranking
  [FieldsToInclude](#cfn-bedrock-flow-rerankingmetadataselectivemodeconfiguration-fieldstoinclude): 
    - FieldForReranking
```

## Properties
<a name="aws-properties-bedrock-flow-rerankingmetadataselectivemodeconfiguration-properties"></a>

`FieldsToExclude`  <a name="cfn-bedrock-flow-rerankingmetadataselectivemodeconfiguration-fieldstoexclude"></a>
A list of metadata field names to explicitly exclude from the reranking process. All metadata fields except these will be considered when reordering search results. This parameter cannot be used together with fieldsToInclude.  
*Required*: No  
*Type*: Array of [FieldForReranking](aws-properties-bedrock-flow-fieldforreranking.md)  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldsToInclude`  <a name="cfn-bedrock-flow-rerankingmetadataselectivemodeconfiguration-fieldstoinclude"></a>
A list of metadata field names to explicitly include in the reranking process. Only these fields will be considered when reordering search results. This parameter cannot be used together with fieldsToExclude.  
*Required*: No  
*Type*: Array of [FieldForReranking](aws-properties-bedrock-flow-fieldforreranking.md)  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow RetrievalFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-retrievalflownodeconfiguration"></a>

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.

## Syntax
<a name="aws-properties-bedrock-flow-retrievalflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-retrievalflownodeconfiguration-syntax.json"></a>

```
{
  "[ServiceConfiguration](#cfn-bedrock-flow-retrievalflownodeconfiguration-serviceconfiguration)" : RetrievalFlowNodeServiceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-retrievalflownodeconfiguration-syntax.yaml"></a>

```
  [ServiceConfiguration](#cfn-bedrock-flow-retrievalflownodeconfiguration-serviceconfiguration): 
    RetrievalFlowNodeServiceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-retrievalflownodeconfiguration-properties"></a>

`ServiceConfiguration`  <a name="cfn-bedrock-flow-retrievalflownodeconfiguration-serviceconfiguration"></a>
Contains configurations for the service to use for retrieving data to return as the output from the node.  
*Required*: Yes  
*Type*: [RetrievalFlowNodeServiceConfiguration](aws-properties-bedrock-flow-retrievalflownodeserviceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow RetrievalFlowNodeS3Configuration
<a name="aws-properties-bedrock-flow-retrievalflownodes3configuration"></a>

Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.

## Syntax
<a name="aws-properties-bedrock-flow-retrievalflownodes3configuration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-retrievalflownodes3configuration-syntax.json"></a>

```
{
  "[BucketName](#cfn-bedrock-flow-retrievalflownodes3configuration-bucketname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-retrievalflownodes3configuration-syntax.yaml"></a>

```
  [BucketName](#cfn-bedrock-flow-retrievalflownodes3configuration-bucketname): String
```

## Properties
<a name="aws-properties-bedrock-flow-retrievalflownodes3configuration-properties"></a>

`BucketName`  <a name="cfn-bedrock-flow-retrievalflownodes3configuration-bucketname"></a>
The name of the Amazon S3 bucket from which to retrieve data.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow RetrievalFlowNodeServiceConfiguration
<a name="aws-properties-bedrock-flow-retrievalflownodeserviceconfiguration"></a>

Contains configurations for the service to use for retrieving data to return as the output from the node.

## Syntax
<a name="aws-properties-bedrock-flow-retrievalflownodeserviceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-retrievalflownodeserviceconfiguration-syntax.json"></a>

```
{
  "[S3](#cfn-bedrock-flow-retrievalflownodeserviceconfiguration-s3)" : RetrievalFlowNodeS3Configuration
}
```

### YAML
<a name="aws-properties-bedrock-flow-retrievalflownodeserviceconfiguration-syntax.yaml"></a>

```
  [S3](#cfn-bedrock-flow-retrievalflownodeserviceconfiguration-s3): 
    RetrievalFlowNodeS3Configuration
```

## Properties
<a name="aws-properties-bedrock-flow-retrievalflownodeserviceconfiguration-properties"></a>

`S3`  <a name="cfn-bedrock-flow-retrievalflownodeserviceconfiguration-s3"></a>
Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.  
*Required*: No  
*Type*: [RetrievalFlowNodeS3Configuration](aws-properties-bedrock-flow-retrievalflownodes3configuration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow S3Location
<a name="aws-properties-bedrock-flow-s3location"></a>

The S3 location of the flow definition.

## Syntax
<a name="aws-properties-bedrock-flow-s3location-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-s3location-syntax.json"></a>

```
{
  "[Bucket](#cfn-bedrock-flow-s3location-bucket)" : String,
  "[Key](#cfn-bedrock-flow-s3location-key)" : String,
  "[Version](#cfn-bedrock-flow-s3location-version)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-s3location-syntax.yaml"></a>

```
  [Bucket](#cfn-bedrock-flow-s3location-bucket): String
  [Key](#cfn-bedrock-flow-s3location-key): String
  [Version](#cfn-bedrock-flow-s3location-version): String
```

## Properties
<a name="aws-properties-bedrock-flow-s3location-properties"></a>

`Bucket`  <a name="cfn-bedrock-flow-s3location-bucket"></a>
The S3 bucket containing the flow definition.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Key`  <a name="cfn-bedrock-flow-s3location-key"></a>
The object key for the S3 location containing the definition.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Version`  <a name="cfn-bedrock-flow-s3location-version"></a>
The Amazon S3 location from which to retrieve data for an S3 retrieve node or to which to store data for an S3 storage node.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow StorageFlowNodeConfiguration
<a name="aws-properties-bedrock-flow-storageflownodeconfiguration"></a>

Contains configurations for a Storage node in a flow. This node stores the input in an Amazon S3 location that you specify.

## Syntax
<a name="aws-properties-bedrock-flow-storageflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-storageflownodeconfiguration-syntax.json"></a>

```
{
  "[ServiceConfiguration](#cfn-bedrock-flow-storageflownodeconfiguration-serviceconfiguration)" : StorageFlowNodeServiceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flow-storageflownodeconfiguration-syntax.yaml"></a>

```
  [ServiceConfiguration](#cfn-bedrock-flow-storageflownodeconfiguration-serviceconfiguration): 
    StorageFlowNodeServiceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flow-storageflownodeconfiguration-properties"></a>

`ServiceConfiguration`  <a name="cfn-bedrock-flow-storageflownodeconfiguration-serviceconfiguration"></a>
Contains configurations for the service to use for storing the input into the node.  
*Required*: Yes  
*Type*: [StorageFlowNodeServiceConfiguration](aws-properties-bedrock-flow-storageflownodeserviceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow StorageFlowNodeS3Configuration
<a name="aws-properties-bedrock-flow-storageflownodes3configuration"></a>

Contains configurations for the Amazon S3 location in which to store the input into the node.

## Syntax
<a name="aws-properties-bedrock-flow-storageflownodes3configuration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-storageflownodes3configuration-syntax.json"></a>

```
{
  "[BucketName](#cfn-bedrock-flow-storageflownodes3configuration-bucketname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-storageflownodes3configuration-syntax.yaml"></a>

```
  [BucketName](#cfn-bedrock-flow-storageflownodes3configuration-bucketname): String
```

## Properties
<a name="aws-properties-bedrock-flow-storageflownodes3configuration-properties"></a>

`BucketName`  <a name="cfn-bedrock-flow-storageflownodes3configuration-bucketname"></a>
The name of the Amazon S3 bucket in which to store the input into the node.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow StorageFlowNodeServiceConfiguration
<a name="aws-properties-bedrock-flow-storageflownodeserviceconfiguration"></a>

Contains configurations for the service to use for storing the input into the node.

## Syntax
<a name="aws-properties-bedrock-flow-storageflownodeserviceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-storageflownodeserviceconfiguration-syntax.json"></a>

```
{
  "[S3](#cfn-bedrock-flow-storageflownodeserviceconfiguration-s3)" : StorageFlowNodeS3Configuration
}
```

### YAML
<a name="aws-properties-bedrock-flow-storageflownodeserviceconfiguration-syntax.yaml"></a>

```
  [S3](#cfn-bedrock-flow-storageflownodeserviceconfiguration-s3): 
    StorageFlowNodeS3Configuration
```

## Properties
<a name="aws-properties-bedrock-flow-storageflownodeserviceconfiguration-properties"></a>

`S3`  <a name="cfn-bedrock-flow-storageflownodeserviceconfiguration-s3"></a>
Contains configurations for the Amazon S3 location in which to store the input into the node.  
*Required*: No  
*Type*: [StorageFlowNodeS3Configuration](aws-properties-bedrock-flow-storageflownodes3configuration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow TextPromptTemplateConfiguration
<a name="aws-properties-bedrock-flow-textprompttemplateconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flow-textprompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-textprompttemplateconfiguration-syntax.json"></a>

```
{
  "[InputVariables](#cfn-bedrock-flow-textprompttemplateconfiguration-inputvariables)" : [ PromptInputVariable, ... ],
  "[Text](#cfn-bedrock-flow-textprompttemplateconfiguration-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-textprompttemplateconfiguration-syntax.yaml"></a>

```
  [InputVariables](#cfn-bedrock-flow-textprompttemplateconfiguration-inputvariables): 
    - PromptInputVariable
  [Text](#cfn-bedrock-flow-textprompttemplateconfiguration-text): String
```

## Properties
<a name="aws-properties-bedrock-flow-textprompttemplateconfiguration-properties"></a>

`InputVariables`  <a name="cfn-bedrock-flow-textprompttemplateconfiguration-inputvariables"></a>
An array of the variables in the prompt template.  
*Required*: No  
*Type*: Array of [PromptInputVariable](aws-properties-bedrock-flow-promptinputvariable.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-flow-textprompttemplateconfiguration-text"></a>
The message for the prompt.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow VectorSearchBedrockRerankingConfiguration
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingconfiguration"></a>

Configuration for using Amazon Bedrock foundation models to rerank Knowledge Base vector search results. This enables more sophisticated relevance ranking using large language models.

## Syntax
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingconfiguration-syntax.json"></a>

```
{
  "[MetadataConfiguration](#cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-metadataconfiguration)" : MetadataConfigurationForReranking,
  "[ModelConfiguration](#cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-modelconfiguration)" : VectorSearchBedrockRerankingModelConfiguration,
  "[NumberOfRerankedResults](#cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-numberofrerankedresults)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingconfiguration-syntax.yaml"></a>

```
  [MetadataConfiguration](#cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-metadataconfiguration): 
    MetadataConfigurationForReranking
  [ModelConfiguration](#cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-modelconfiguration): 
    VectorSearchBedrockRerankingModelConfiguration
  [NumberOfRerankedResults](#cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-numberofrerankedresults): 
    Number
```

## Properties
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingconfiguration-properties"></a>

`MetadataConfiguration`  <a name="cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-metadataconfiguration"></a>
Configuration for how document metadata should be used during the reranking process. This determines which metadata fields are included when reordering search results.  
*Required*: No  
*Type*: [MetadataConfigurationForReranking](aws-properties-bedrock-flow-metadataconfigurationforreranking.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelConfiguration`  <a name="cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-modelconfiguration"></a>
Configuration for the Amazon Bedrock foundation model used for reranking. This includes the model ARN and any additional request fields required by the model.  
*Required*: Yes  
*Type*: [VectorSearchBedrockRerankingModelConfiguration](aws-properties-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NumberOfRerankedResults`  <a name="cfn-bedrock-flow-vectorsearchbedrockrerankingconfiguration-numberofrerankedresults"></a>
The maximum number of results to rerank. This limits how many of the initial vector search results will be processed by the reranking model. A smaller number improves performance but may exclude potentially relevant results.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow VectorSearchBedrockRerankingModelConfiguration
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration"></a>

Configuration for the Amazon Bedrock foundation model used for reranking vector search results. This specifies which model to use and any additional parameters required by the model.

## Syntax
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-additionalmodelrequestfields)" : Json,
  "[ModelArn](#cfn-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-modelarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-additionalmodelrequestfields): Json
  [ModelArn](#cfn-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-modelarn): String
```

## Properties
<a name="aws-properties-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-additionalmodelrequestfields"></a>
A list of additional fields to include in the model request during reranking. These fields provide extra context or configuration options specific to the selected foundation model.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelArn`  <a name="cfn-bedrock-flow-vectorsearchbedrockrerankingmodelconfiguration-modelarn"></a>
The Amazon Resource Name (ARN) of the foundation model to use for reranking. This model processes the query and search results to determine a more relevant ordering.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/(.*))?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Flow VectorSearchRerankingConfiguration
<a name="aws-properties-bedrock-flow-vectorsearchrerankingconfiguration"></a>

Configuration for reranking vector search results to improve relevance. Reranking applies additional relevance models to reorder the initial vector search results based on more sophisticated criteria.

## Syntax
<a name="aws-properties-bedrock-flow-vectorsearchrerankingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flow-vectorsearchrerankingconfiguration-syntax.json"></a>

```
{
  "[BedrockRerankingConfiguration](#cfn-bedrock-flow-vectorsearchrerankingconfiguration-bedrockrerankingconfiguration)" : VectorSearchBedrockRerankingConfiguration,
  "[Type](#cfn-bedrock-flow-vectorsearchrerankingconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flow-vectorsearchrerankingconfiguration-syntax.yaml"></a>

```
  [BedrockRerankingConfiguration](#cfn-bedrock-flow-vectorsearchrerankingconfiguration-bedrockrerankingconfiguration): 
    VectorSearchBedrockRerankingConfiguration
  [Type](#cfn-bedrock-flow-vectorsearchrerankingconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-flow-vectorsearchrerankingconfiguration-properties"></a>

`BedrockRerankingConfiguration`  <a name="cfn-bedrock-flow-vectorsearchrerankingconfiguration-bedrockrerankingconfiguration"></a>
Configuration for using Amazon Bedrock foundation models to rerank search results. This is required when the reranking type is set to BEDROCK.  
*Required*: No  
*Type*: [VectorSearchBedrockRerankingConfiguration](aws-properties-bedrock-flow-vectorsearchbedrockrerankingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flow-vectorsearchrerankingconfiguration-type"></a>
The type of reranking to apply to vector search results. Currently, the only supported value is BEDROCK, which uses Amazon Bedrock foundation models for reranking.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BEDROCK_RERANKING_MODEL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowAlias
<a name="aws-resource-bedrock-flowalias"></a>

Creates an alias of a flow for deployment. For more information, see [Deploy a flow in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-resource-bedrock-flowalias-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-flowalias-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::FlowAlias",
  "Properties" : {
      "[ConcurrencyConfiguration](#cfn-bedrock-flowalias-concurrencyconfiguration)" : FlowAliasConcurrencyConfiguration,
      "[Description](#cfn-bedrock-flowalias-description)" : String,
      "[FlowArn](#cfn-bedrock-flowalias-flowarn)" : String,
      "[Name](#cfn-bedrock-flowalias-name)" : String,
      "[RoutingConfiguration](#cfn-bedrock-flowalias-routingconfiguration)" : [ FlowAliasRoutingConfigurationListItem, ... ],
      "[Tags](#cfn-bedrock-flowalias-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-bedrock-flowalias-syntax.yaml"></a>

```
Type: AWS::Bedrock::FlowAlias
Properties:
  [ConcurrencyConfiguration](#cfn-bedrock-flowalias-concurrencyconfiguration): 
    FlowAliasConcurrencyConfiguration
  [Description](#cfn-bedrock-flowalias-description): String
  [FlowArn](#cfn-bedrock-flowalias-flowarn): String
  [Name](#cfn-bedrock-flowalias-name): String
  [RoutingConfiguration](#cfn-bedrock-flowalias-routingconfiguration): 
    - FlowAliasRoutingConfigurationListItem
  [Tags](#cfn-bedrock-flowalias-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-bedrock-flowalias-properties"></a>

`ConcurrencyConfiguration`  <a name="cfn-bedrock-flowalias-concurrencyconfiguration"></a>
The configuration that specifies how nodes in the flow are executed concurrently.  
*Required*: No  
*Type*: [FlowAliasConcurrencyConfiguration](aws-properties-bedrock-flowalias-flowaliasconcurrencyconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-flowalias-description"></a>
A description of the alias.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FlowArn`  <a name="cfn-bedrock-flowalias-flowarn"></a>
The Amazon Resource Name (ARN) of the alias.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Name`  <a name="cfn-bedrock-flowalias-name"></a>
The name of the alias.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoutingConfiguration`  <a name="cfn-bedrock-flowalias-routingconfiguration"></a>
A list of configurations about the versions that the alias maps to. Currently, you can only specify one.  
*Required*: Yes  
*Type*: Array of [FlowAliasRoutingConfigurationListItem](aws-properties-bedrock-flowalias-flowaliasroutingconfigurationlistitem.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-flowalias-tags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-flowalias-return-values"></a>

### Ref
<a name="aws-resource-bedrock-flowalias-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Number (ARN) of the flow and the Amazon Resource Name (ARN) of its alias, separated by a pipe (`|`).

For example, `{ "Ref": "myFlowAlias" }` could return the value `"arn:aws:bedrock:us-east-1:123456789012:flow/FLOW12345|arn:aws:bedrock:us-east-1:123456789012:flow/FLOW12345/alias/ALIAS12345"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-flowalias-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-flowalias-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the alias.

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the alias was created.

`FlowId`  <a name="FlowId-fn::getatt"></a>
The unique identifier of the flow.

`Id`  <a name="Id-fn::getatt"></a>
The unique identifier of the alias of the flow.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the alias was last updated.

# AWS::Bedrock::FlowAlias FlowAliasConcurrencyConfiguration
<a name="aws-properties-bedrock-flowalias-flowaliasconcurrencyconfiguration"></a>

Determines how multiple nodes in a flow can run in parallel. Running nodes concurrently can improve your flow's performance.

## Syntax
<a name="aws-properties-bedrock-flowalias-flowaliasconcurrencyconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowalias-flowaliasconcurrencyconfiguration-syntax.json"></a>

```
{
  "[MaxConcurrency](#cfn-bedrock-flowalias-flowaliasconcurrencyconfiguration-maxconcurrency)" : Number,
  "[Type](#cfn-bedrock-flowalias-flowaliasconcurrencyconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowalias-flowaliasconcurrencyconfiguration-syntax.yaml"></a>

```
  [MaxConcurrency](#cfn-bedrock-flowalias-flowaliasconcurrencyconfiguration-maxconcurrency): Number
  [Type](#cfn-bedrock-flowalias-flowaliasconcurrencyconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-flowalias-flowaliasconcurrencyconfiguration-properties"></a>

`MaxConcurrency`  <a name="cfn-bedrock-flowalias-flowaliasconcurrencyconfiguration-maxconcurrency"></a>
The maximum number of nodes that can be executed concurrently in the flow.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flowalias-flowaliasconcurrencyconfiguration-type"></a>
The type of concurrency to use for parallel node execution. Specify one of the following options:  
+ `Automatic` - Amazon Bedrock determines which nodes can be executed in parallel based on the flow definition and its dependencies.
+ `Manual` - You specify which nodes can be executed in parallel.
*Required*: Yes  
*Type*: String  
*Allowed values*: `Automatic | Manual`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowAlias FlowAliasRoutingConfigurationListItem
<a name="aws-properties-bedrock-flowalias-flowaliasroutingconfigurationlistitem"></a>

Contains information about a version that the alias maps to.

## Syntax
<a name="aws-properties-bedrock-flowalias-flowaliasroutingconfigurationlistitem-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowalias-flowaliasroutingconfigurationlistitem-syntax.json"></a>

```
{
  "[FlowVersion](#cfn-bedrock-flowalias-flowaliasroutingconfigurationlistitem-flowversion)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowalias-flowaliasroutingconfigurationlistitem-syntax.yaml"></a>

```
  [FlowVersion](#cfn-bedrock-flowalias-flowaliasroutingconfigurationlistitem-flowversion): String
```

## Properties
<a name="aws-properties-bedrock-flowalias-flowaliasroutingconfigurationlistitem-properties"></a>

`FlowVersion`  <a name="cfn-bedrock-flowalias-flowaliasroutingconfigurationlistitem-flowversion"></a>
The version that the alias maps to.  
*Required*: No  
*Type*: String  
*Pattern*: `^(DRAFT|[0-9]{0,4}[1-9][0-9]{0,4})$`  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion
<a name="aws-resource-bedrock-flowversion"></a>

Creates a version of the flow that you can deploy. For more information, see [Deploy a flow in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-deploy.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-resource-bedrock-flowversion-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-flowversion-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::FlowVersion",
  "Properties" : {
      "[Description](#cfn-bedrock-flowversion-description)" : String,
      "[FlowArn](#cfn-bedrock-flowversion-flowarn)" : String
    }
}
```

### YAML
<a name="aws-resource-bedrock-flowversion-syntax.yaml"></a>

```
Type: AWS::Bedrock::FlowVersion
Properties:
  [Description](#cfn-bedrock-flowversion-description): String
  [FlowArn](#cfn-bedrock-flowversion-flowarn): String
```

## Properties
<a name="aws-resource-bedrock-flowversion-properties"></a>

`Description`  <a name="cfn-bedrock-flowversion-description"></a>
The description of the flow version.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FlowArn`  <a name="cfn-bedrock-flowversion-flowarn"></a>
The Amazon Resource Name (ARN) of the flow that the version belongs to.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:flow/[0-9a-zA-Z]{10}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-bedrock-flowversion-return-values"></a>

### Ref
<a name="aws-resource-bedrock-flowversion-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Number (ARN) of the flow the version of the flow, separated by a pipe (`|`).

For example, `{ "Ref": "myFlowVersion" }` could return the value `"arn:aws:bedrock:us-east-1:123456789012:flow/FLOW12345|1"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-flowversion-return-values-fn--getatt"></a>

#### 
<a name="aws-resource-bedrock-flowversion-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at the version was created.

`CustomerEncryptionKeyArn`  <a name="CustomerEncryptionKeyArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the KMS key that the flow version is encrypted with.

`ExecutionRoleArn`  <a name="ExecutionRoleArn-fn::getatt"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-permissions.html) in the Amazon Bedrock User Guide.

`FlowId`  <a name="FlowId-fn::getatt"></a>
The unique identifier of the flow.

`Name`  <a name="Name-fn::getatt"></a>
The name of the flow.

`Status`  <a name="Status-fn::getatt"></a>
The status of the flow.

`Version`  <a name="Version-fn::getatt"></a>
The version of the flow.

# AWS::Bedrock::FlowVersion AgentFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-agentflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-agentflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-agentflownodeconfiguration-syntax.json"></a>

```
{
  "[AgentAliasArn](#cfn-bedrock-flowversion-agentflownodeconfiguration-agentaliasarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-agentflownodeconfiguration-syntax.yaml"></a>

```
  [AgentAliasArn](#cfn-bedrock-flowversion-agentflownodeconfiguration-agentaliasarn): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-agentflownodeconfiguration-properties"></a>

`AgentAliasArn`  <a name="cfn-bedrock-flowversion-agentflownodeconfiguration-agentaliasarn"></a>
The Amazon Resource Name (ARN) of the alias of the agent to invoke.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion ConditionFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-conditionflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-conditionflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-conditionflownodeconfiguration-syntax.json"></a>

```
{
  "[Conditions](#cfn-bedrock-flowversion-conditionflownodeconfiguration-conditions)" : [ FlowCondition, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-conditionflownodeconfiguration-syntax.yaml"></a>

```
  [Conditions](#cfn-bedrock-flowversion-conditionflownodeconfiguration-conditions): 
    - FlowCondition
```

## Properties
<a name="aws-properties-bedrock-flowversion-conditionflownodeconfiguration-properties"></a>

`Conditions`  <a name="cfn-bedrock-flowversion-conditionflownodeconfiguration-conditions"></a>
An array of conditions. Each member contains the name of a condition and an expression that defines the condition.  
*Required*: Yes  
*Type*: Array of [FlowCondition](aws-properties-bedrock-flowversion-flowcondition.md)  
*Minimum*: `1`  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FieldForReranking
<a name="aws-properties-bedrock-flowversion-fieldforreranking"></a>

Specifies a field to be used during the reranking process in a Knowledge Base vector search. This structure identifies metadata fields that should be considered when reordering search results to improve relevance.

## Syntax
<a name="aws-properties-bedrock-flowversion-fieldforreranking-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-fieldforreranking-syntax.json"></a>

```
{
  "[FieldName](#cfn-bedrock-flowversion-fieldforreranking-fieldname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-fieldforreranking-syntax.yaml"></a>

```
  [FieldName](#cfn-bedrock-flowversion-fieldforreranking-fieldname): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-fieldforreranking-properties"></a>

`FieldName`  <a name="cfn-bedrock-flowversion-fieldforreranking-fieldname"></a>
The name of the metadata field to be used during the reranking process.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `2000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowCondition
<a name="aws-properties-bedrock-flowversion-flowcondition"></a>

Defines a condition in the condition node.

## Syntax
<a name="aws-properties-bedrock-flowversion-flowcondition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flowcondition-syntax.json"></a>

```
{
  "[Expression](#cfn-bedrock-flowversion-flowcondition-expression)" : String,
  "[Name](#cfn-bedrock-flowversion-flowcondition-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flowcondition-syntax.yaml"></a>

```
  [Expression](#cfn-bedrock-flowversion-flowcondition-expression): String
  [Name](#cfn-bedrock-flowversion-flowcondition-name): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flowcondition-properties"></a>

`Expression`  <a name="cfn-bedrock-flowversion-flowcondition-expression"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-how-it-works.html#flows-nodes).  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flowversion-flowcondition-name"></a>
A name for the condition that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowConditionalConnectionConfiguration
<a name="aws-properties-bedrock-flowversion-flowconditionalconnectionconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flowversion-flowconditionalconnectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flowconditionalconnectionconfiguration-syntax.json"></a>

```
{
  "[Condition](#cfn-bedrock-flowversion-flowconditionalconnectionconfiguration-condition)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flowconditionalconnectionconfiguration-syntax.yaml"></a>

```
  [Condition](#cfn-bedrock-flowversion-flowconditionalconnectionconfiguration-condition): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flowconditionalconnectionconfiguration-properties"></a>

`Condition`  <a name="cfn-bedrock-flowversion-flowconditionalconnectionconfiguration-condition"></a>
The condition that triggers this connection. For more information about how to write conditions, see the **Condition** node type in the [Node types](https://docs.aws.amazon.com/bedrock/latest/userguide/node-types.html) topic in the Amazon Bedrock User Guide.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowConnection
<a name="aws-properties-bedrock-flowversion-flowconnection"></a>

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

## Syntax
<a name="aws-properties-bedrock-flowversion-flowconnection-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flowconnection-syntax.json"></a>

```
{
  "[Configuration](#cfn-bedrock-flowversion-flowconnection-configuration)" : FlowConnectionConfiguration,
  "[Name](#cfn-bedrock-flowversion-flowconnection-name)" : String,
  "[Source](#cfn-bedrock-flowversion-flowconnection-source)" : String,
  "[Target](#cfn-bedrock-flowversion-flowconnection-target)" : String,
  "[Type](#cfn-bedrock-flowversion-flowconnection-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flowconnection-syntax.yaml"></a>

```
  [Configuration](#cfn-bedrock-flowversion-flowconnection-configuration): 
    FlowConnectionConfiguration
  [Name](#cfn-bedrock-flowversion-flowconnection-name): String
  [Source](#cfn-bedrock-flowversion-flowconnection-source): String
  [Target](#cfn-bedrock-flowversion-flowconnection-target): String
  [Type](#cfn-bedrock-flowversion-flowconnection-type): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flowconnection-properties"></a>

`Configuration`  <a name="cfn-bedrock-flowversion-flowconnection-configuration"></a>
The configuration of the connection.  
*Required*: No  
*Type*: [FlowConnectionConfiguration](aws-properties-bedrock-flowversion-flowconnectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flowversion-flowconnection-name"></a>
A name for the connection that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Source`  <a name="cfn-bedrock-flowversion-flowconnection-source"></a>
The node that the connection starts at.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Target`  <a name="cfn-bedrock-flowversion-flowconnection-target"></a>
The node that the connection ends at.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flowversion-flowconnection-type"></a>
Whether the source node that the connection begins from is a condition node (`Conditional`) or not (`Data`).  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Data | Conditional`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowConnectionConfiguration
<a name="aws-properties-bedrock-flowversion-flowconnectionconfiguration"></a>

The configuration of the connection.

## Syntax
<a name="aws-properties-bedrock-flowversion-flowconnectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flowconnectionconfiguration-syntax.json"></a>

```
{
  "[Conditional](#cfn-bedrock-flowversion-flowconnectionconfiguration-conditional)" : FlowConditionalConnectionConfiguration,
  "[Data](#cfn-bedrock-flowversion-flowconnectionconfiguration-data)" : FlowDataConnectionConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flowconnectionconfiguration-syntax.yaml"></a>

```
  [Conditional](#cfn-bedrock-flowversion-flowconnectionconfiguration-conditional): 
    FlowConditionalConnectionConfiguration
  [Data](#cfn-bedrock-flowversion-flowconnectionconfiguration-data): 
    FlowDataConnectionConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-flowconnectionconfiguration-properties"></a>

`Conditional`  <a name="cfn-bedrock-flowversion-flowconnectionconfiguration-conditional"></a>
The configuration of a connection originating from a Condition node.  
*Required*: No  
*Type*: [FlowConditionalConnectionConfiguration](aws-properties-bedrock-flowversion-flowconditionalconnectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Data`  <a name="cfn-bedrock-flowversion-flowconnectionconfiguration-data"></a>
The configuration of a connection originating from a node that isn't a Condition node.  
*Required*: No  
*Type*: [FlowDataConnectionConfiguration](aws-properties-bedrock-flowversion-flowdataconnectionconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowDataConnectionConfiguration
<a name="aws-properties-bedrock-flowversion-flowdataconnectionconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flowversion-flowdataconnectionconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flowdataconnectionconfiguration-syntax.json"></a>

```
{
  "[SourceOutput](#cfn-bedrock-flowversion-flowdataconnectionconfiguration-sourceoutput)" : String,
  "[TargetInput](#cfn-bedrock-flowversion-flowdataconnectionconfiguration-targetinput)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flowdataconnectionconfiguration-syntax.yaml"></a>

```
  [SourceOutput](#cfn-bedrock-flowversion-flowdataconnectionconfiguration-sourceoutput): String
  [TargetInput](#cfn-bedrock-flowversion-flowdataconnectionconfiguration-targetinput): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flowdataconnectionconfiguration-properties"></a>

`SourceOutput`  <a name="cfn-bedrock-flowversion-flowdataconnectionconfiguration-sourceoutput"></a>
The name of the output in the source node that the connection begins from.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TargetInput`  <a name="cfn-bedrock-flowversion-flowdataconnectionconfiguration-targetinput"></a>
The name of the input in the target node that the connection ends at.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowDefinition
<a name="aws-properties-bedrock-flowversion-flowdefinition"></a>

The definition of the nodes and connections between nodes in the flow.

## Syntax
<a name="aws-properties-bedrock-flowversion-flowdefinition-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flowdefinition-syntax.json"></a>

```
{
  "[Connections](#cfn-bedrock-flowversion-flowdefinition-connections)" : [ FlowConnection, ... ],
  "[Nodes](#cfn-bedrock-flowversion-flowdefinition-nodes)" : [ FlowNode, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flowdefinition-syntax.yaml"></a>

```
  [Connections](#cfn-bedrock-flowversion-flowdefinition-connections): 
    - FlowConnection
  [Nodes](#cfn-bedrock-flowversion-flowdefinition-nodes): 
    - FlowNode
```

## Properties
<a name="aws-properties-bedrock-flowversion-flowdefinition-properties"></a>

`Connections`  <a name="cfn-bedrock-flowversion-flowdefinition-connections"></a>
An array of connection definitions in the flow.  
*Required*: No  
*Type*: Array of [FlowConnection](aws-properties-bedrock-flowversion-flowconnection.md)  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Nodes`  <a name="cfn-bedrock-flowversion-flowdefinition-nodes"></a>
An array of node definitions in the flow.  
*Required*: No  
*Type*: Array of [FlowNode](aws-properties-bedrock-flowversion-flownode.md)  
*Maximum*: `40`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowNode
<a name="aws-properties-bedrock-flowversion-flownode"></a>

Contains configurations about a node in the flow.

## Syntax
<a name="aws-properties-bedrock-flowversion-flownode-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flownode-syntax.json"></a>

```
{
  "[Configuration](#cfn-bedrock-flowversion-flownode-configuration)" : FlowNodeConfiguration,
  "[Inputs](#cfn-bedrock-flowversion-flownode-inputs)" : [ FlowNodeInput, ... ],
  "[Name](#cfn-bedrock-flowversion-flownode-name)" : String,
  "[Outputs](#cfn-bedrock-flowversion-flownode-outputs)" : [ FlowNodeOutput, ... ],
  "[Type](#cfn-bedrock-flowversion-flownode-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flownode-syntax.yaml"></a>

```
  [Configuration](#cfn-bedrock-flowversion-flownode-configuration): 
    FlowNodeConfiguration
  [Inputs](#cfn-bedrock-flowversion-flownode-inputs): 
    - FlowNodeInput
  [Name](#cfn-bedrock-flowversion-flownode-name): String
  [Outputs](#cfn-bedrock-flowversion-flownode-outputs): 
    - FlowNodeOutput
  [Type](#cfn-bedrock-flowversion-flownode-type): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flownode-properties"></a>

`Configuration`  <a name="cfn-bedrock-flowversion-flownode-configuration"></a>
Contains configurations for the node.  
*Required*: No  
*Type*: [FlowNodeConfiguration](aws-properties-bedrock-flowversion-flownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Inputs`  <a name="cfn-bedrock-flowversion-flownode-inputs"></a>
An array of objects, each of which contains information about an input into the node.  
*Required*: No  
*Type*: Array of [FlowNodeInput](aws-properties-bedrock-flowversion-flownodeinput.md)  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flowversion-flownode-name"></a>
A name for the node.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Outputs`  <a name="cfn-bedrock-flowversion-flownode-outputs"></a>
A list of objects, each of which contains information about an output from the node.  
*Required*: No  
*Type*: Array of [FlowNodeOutput](aws-properties-bedrock-flowversion-flownodeoutput.md)  
*Maximum*: `5`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flowversion-flownode-type"></a>
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.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Input | Output | KnowledgeBase | Condition | Lex | Prompt | LambdaFunction | Agent | Iterator | Collector | Storage | Retrieval | InlineCode | Loop | LoopInput | LoopController`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-flownodeconfiguration"></a>

Contains configurations for a node in your flow. For more information, see [Node types in a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-flownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flownodeconfiguration-syntax.json"></a>

```
{
  "[Agent](#cfn-bedrock-flowversion-flownodeconfiguration-agent)" : AgentFlowNodeConfiguration,
  "[Collector](#cfn-bedrock-flowversion-flownodeconfiguration-collector)" : Json,
  "[Condition](#cfn-bedrock-flowversion-flownodeconfiguration-condition)" : ConditionFlowNodeConfiguration,
  "[InlineCode](#cfn-bedrock-flowversion-flownodeconfiguration-inlinecode)" : InlineCodeFlowNodeConfiguration,
  "[Input](#cfn-bedrock-flowversion-flownodeconfiguration-input)" : Json,
  "[Iterator](#cfn-bedrock-flowversion-flownodeconfiguration-iterator)" : Json,
  "[KnowledgeBase](#cfn-bedrock-flowversion-flownodeconfiguration-knowledgebase)" : KnowledgeBaseFlowNodeConfiguration,
  "[LambdaFunction](#cfn-bedrock-flowversion-flownodeconfiguration-lambdafunction)" : LambdaFunctionFlowNodeConfiguration,
  "[Lex](#cfn-bedrock-flowversion-flownodeconfiguration-lex)" : LexFlowNodeConfiguration,
  "[Loop](#cfn-bedrock-flowversion-flownodeconfiguration-loop)" : LoopFlowNodeConfiguration,
  "[LoopController](#cfn-bedrock-flowversion-flownodeconfiguration-loopcontroller)" : LoopControllerFlowNodeConfiguration,
  "[LoopInput](#cfn-bedrock-flowversion-flownodeconfiguration-loopinput)" : Json,
  "[Output](#cfn-bedrock-flowversion-flownodeconfiguration-output)" : Json,
  "[Prompt](#cfn-bedrock-flowversion-flownodeconfiguration-prompt)" : PromptFlowNodeConfiguration,
  "[Retrieval](#cfn-bedrock-flowversion-flownodeconfiguration-retrieval)" : RetrievalFlowNodeConfiguration,
  "[Storage](#cfn-bedrock-flowversion-flownodeconfiguration-storage)" : StorageFlowNodeConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flownodeconfiguration-syntax.yaml"></a>

```
  [Agent](#cfn-bedrock-flowversion-flownodeconfiguration-agent): 
    AgentFlowNodeConfiguration
  [Collector](#cfn-bedrock-flowversion-flownodeconfiguration-collector): Json
  [Condition](#cfn-bedrock-flowversion-flownodeconfiguration-condition): 
    ConditionFlowNodeConfiguration
  [InlineCode](#cfn-bedrock-flowversion-flownodeconfiguration-inlinecode): 
    InlineCodeFlowNodeConfiguration
  [Input](#cfn-bedrock-flowversion-flownodeconfiguration-input): Json
  [Iterator](#cfn-bedrock-flowversion-flownodeconfiguration-iterator): Json
  [KnowledgeBase](#cfn-bedrock-flowversion-flownodeconfiguration-knowledgebase): 
    KnowledgeBaseFlowNodeConfiguration
  [LambdaFunction](#cfn-bedrock-flowversion-flownodeconfiguration-lambdafunction): 
    LambdaFunctionFlowNodeConfiguration
  [Lex](#cfn-bedrock-flowversion-flownodeconfiguration-lex): 
    LexFlowNodeConfiguration
  [Loop](#cfn-bedrock-flowversion-flownodeconfiguration-loop): 
    LoopFlowNodeConfiguration
  [LoopController](#cfn-bedrock-flowversion-flownodeconfiguration-loopcontroller): 
    LoopControllerFlowNodeConfiguration
  [LoopInput](#cfn-bedrock-flowversion-flownodeconfiguration-loopinput): Json
  [Output](#cfn-bedrock-flowversion-flownodeconfiguration-output): Json
  [Prompt](#cfn-bedrock-flowversion-flownodeconfiguration-prompt): 
    PromptFlowNodeConfiguration
  [Retrieval](#cfn-bedrock-flowversion-flownodeconfiguration-retrieval): 
    RetrievalFlowNodeConfiguration
  [Storage](#cfn-bedrock-flowversion-flownodeconfiguration-storage): 
    StorageFlowNodeConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-flownodeconfiguration-properties"></a>

`Agent`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-agent"></a>
Contains configurations for an agent node in your flow. Invokes an alias of an agent and returns the response.  
*Required*: No  
*Type*: [AgentFlowNodeConfiguration](aws-properties-bedrock-flowversion-agentflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Collector`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-collector"></a>
Contains configurations for a collector node in your flow. Collects an iteration of inputs and consolidates them into an array of outputs.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Condition`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-condition"></a>
Contains configurations for a condition node in your flow. Defines conditions that lead to different branches of the flow.  
*Required*: No  
*Type*: [ConditionFlowNodeConfiguration](aws-properties-bedrock-flowversion-conditionflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InlineCode`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-inlinecode"></a>
Contains configurations for an inline code node in your flow. Inline code nodes let you write and execute code directly within your flow, enabling data transformations, custom logic, and integrations without needing an external Lambda function.  
*Required*: No  
*Type*: [InlineCodeFlowNodeConfiguration](aws-properties-bedrock-flowversion-inlinecodeflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Input`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-input"></a>
Contains configurations for an input flow node in your flow. The first node in the flow. `inputs` can't be specified for this node.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Iterator`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-iterator"></a>
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.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBase`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-knowledgebase"></a>
Contains configurations for a knowledge base node in your flow. Queries a knowledge base and returns the retrieved results or generated response.  
*Required*: No  
*Type*: [KnowledgeBaseFlowNodeConfiguration](aws-properties-bedrock-flowversion-knowledgebaseflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LambdaFunction`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-lambdafunction"></a>
Contains configurations for a Lambda function node in your flow. Invokes an AWS Lambda function.  
*Required*: No  
*Type*: [LambdaFunctionFlowNodeConfiguration](aws-properties-bedrock-flowversion-lambdafunctionflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Lex`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-lex"></a>
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.  
*Required*: No  
*Type*: [LexFlowNodeConfiguration](aws-properties-bedrock-flowversion-lexflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Loop`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-loop"></a>
Contains configurations for a DoWhile loop in your flow.  
*Required*: No  
*Type*: [LoopFlowNodeConfiguration](aws-properties-bedrock-flowversion-loopflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LoopController`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-loopcontroller"></a>
Contains controller node configurations for a DoWhile loop in your flow.  
*Required*: No  
*Type*: [LoopControllerFlowNodeConfiguration](aws-properties-bedrock-flowversion-loopcontrollerflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LoopInput`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-loopinput"></a>
Contains input node configurations for a DoWhile loop in your flow.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Output`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-output"></a>
Contains configurations for an output flow node in your flow. The last node in the flow. `outputs` can't be specified for this node.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Prompt`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-prompt"></a>
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.  
*Required*: No  
*Type*: [PromptFlowNodeConfiguration](aws-properties-bedrock-flowversion-promptflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Retrieval`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-retrieval"></a>
Contains configurations for a retrieval node in your flow. Retrieves data from an Amazon S3 location and returns it as the output.  
*Required*: No  
*Type*: [RetrievalFlowNodeConfiguration](aws-properties-bedrock-flowversion-retrievalflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Storage`  <a name="cfn-bedrock-flowversion-flownodeconfiguration-storage"></a>
Contains configurations for a storage node in your flow. Stores an input in an Amazon S3 location.  
*Required*: No  
*Type*: [StorageFlowNodeConfiguration](aws-properties-bedrock-flowversion-storageflownodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowNodeInput
<a name="aws-properties-bedrock-flowversion-flownodeinput"></a>

Contains configurations for an input in an Amazon Bedrock Flows node.

## Syntax
<a name="aws-properties-bedrock-flowversion-flownodeinput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flownodeinput-syntax.json"></a>

```
{
  "[Expression](#cfn-bedrock-flowversion-flownodeinput-expression)" : String,
  "[Name](#cfn-bedrock-flowversion-flownodeinput-name)" : String,
  "[Type](#cfn-bedrock-flowversion-flownodeinput-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flownodeinput-syntax.yaml"></a>

```
  [Expression](#cfn-bedrock-flowversion-flownodeinput-expression): String
  [Name](#cfn-bedrock-flowversion-flownodeinput-name): String
  [Type](#cfn-bedrock-flowversion-flownodeinput-type): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flownodeinput-properties"></a>

`Expression`  <a name="cfn-bedrock-flowversion-flownodeinput-expression"></a>
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](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-expressions.html).  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-flowversion-flownodeinput-name"></a>
Specifies a name for the input that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flowversion-flownodeinput-type"></a>
Specifies the data type of the input. If the input doesn't match this type at runtime, a validation error will be thrown.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `String | Number | Boolean | Object | Array`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion FlowNodeOutput
<a name="aws-properties-bedrock-flowversion-flownodeoutput"></a>

Contains configurations for an output from a node.

## Syntax
<a name="aws-properties-bedrock-flowversion-flownodeoutput-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-flownodeoutput-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-flowversion-flownodeoutput-name)" : String,
  "[Type](#cfn-bedrock-flowversion-flownodeoutput-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-flownodeoutput-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-flowversion-flownodeoutput-name): String
  [Type](#cfn-bedrock-flowversion-flownodeoutput-type): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-flownodeoutput-properties"></a>

`Name`  <a name="cfn-bedrock-flowversion-flownodeoutput-name"></a>
A name for the output that you can reference.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z]([_]?[0-9a-zA-Z]){1,50}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flowversion-flownodeoutput-type"></a>
The data type of the output. If the output doesn't match this type at runtime, a validation error will be thrown.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `String | Number | Boolean | Object | Array`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion GuardrailConfiguration
<a name="aws-properties-bedrock-flowversion-guardrailconfiguration"></a>

Configuration information for a guardrail that you use with the [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) operation.

## Syntax
<a name="aws-properties-bedrock-flowversion-guardrailconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-guardrailconfiguration-syntax.json"></a>

```
{
  "[GuardrailIdentifier](#cfn-bedrock-flowversion-guardrailconfiguration-guardrailidentifier)" : String,
  "[GuardrailVersion](#cfn-bedrock-flowversion-guardrailconfiguration-guardrailversion)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-guardrailconfiguration-syntax.yaml"></a>

```
  [GuardrailIdentifier](#cfn-bedrock-flowversion-guardrailconfiguration-guardrailidentifier): String
  [GuardrailVersion](#cfn-bedrock-flowversion-guardrailconfiguration-guardrailversion): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-guardrailconfiguration-properties"></a>

`GuardrailIdentifier`  <a name="cfn-bedrock-flowversion-guardrailconfiguration-guardrailidentifier"></a>
The identifier for the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GuardrailVersion`  <a name="cfn-bedrock-flowversion-guardrailconfiguration-guardrailversion"></a>
The version of the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^(([0-9]{1,8})|(DRAFT))$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion InlineCodeFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-inlinecodeflownodeconfiguration"></a>

Contains configurations for an inline code node in your flow. Inline code nodes let you write and execute code directly within your flow, enabling data transformations, custom logic, and integrations without needing an external Lambda function.

## Syntax
<a name="aws-properties-bedrock-flowversion-inlinecodeflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-inlinecodeflownodeconfiguration-syntax.json"></a>

```
{
  "[Code](#cfn-bedrock-flowversion-inlinecodeflownodeconfiguration-code)" : String,
  "[Language](#cfn-bedrock-flowversion-inlinecodeflownodeconfiguration-language)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-inlinecodeflownodeconfiguration-syntax.yaml"></a>

```
  [Code](#cfn-bedrock-flowversion-inlinecodeflownodeconfiguration-code): String
  [Language](#cfn-bedrock-flowversion-inlinecodeflownodeconfiguration-language): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-inlinecodeflownodeconfiguration-properties"></a>

`Code`  <a name="cfn-bedrock-flowversion-inlinecodeflownodeconfiguration-code"></a>
The code that's executed in your inline code node. The code can access input data from previous nodes in the flow, perform operations on that data, and produce output that can be used by other nodes in your flow.  
The code must be valid in the programming `language` that you specify.  
*Required*: Yes  
*Type*: String  
*Maximum*: `5000000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Language`  <a name="cfn-bedrock-flowversion-inlinecodeflownodeconfiguration-language"></a>
The programming language used by your inline code node.  
The code must be valid in the programming `language` that you specify. Currently, only Python 3 (`Python_3`) is supported.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `Python_3`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion KnowledgeBaseFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-knowledgebaseflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-knowledgebaseflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-knowledgebaseflownodeconfiguration-syntax.json"></a>

```
{
  "[GuardrailConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-guardrailconfiguration)" : GuardrailConfiguration,
  "[InferenceConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-inferenceconfiguration)" : PromptInferenceConfiguration,
  "[KnowledgeBaseId](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-knowledgebaseid)" : String,
  "[ModelId](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-modelid)" : String,
  "[NumberOfResults](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-numberofresults)" : Number,
  "[OrchestrationConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-orchestrationconfiguration)" : KnowledgeBaseOrchestrationConfiguration,
  "[PromptTemplate](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-prompttemplate)" : KnowledgeBasePromptTemplate,
  "[RerankingConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-rerankingconfiguration)" : VectorSearchRerankingConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-knowledgebaseflownodeconfiguration-syntax.yaml"></a>

```
  [GuardrailConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-guardrailconfiguration): 
    GuardrailConfiguration
  [InferenceConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-inferenceconfiguration): 
    PromptInferenceConfiguration
  [KnowledgeBaseId](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-knowledgebaseid): String
  [ModelId](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-modelid): String
  [NumberOfResults](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-numberofresults): 
    Number
  [OrchestrationConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-orchestrationconfiguration): 
    KnowledgeBaseOrchestrationConfiguration
  [PromptTemplate](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-prompttemplate): 
    KnowledgeBasePromptTemplate
  [RerankingConfiguration](#cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-rerankingconfiguration): 
    VectorSearchRerankingConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-knowledgebaseflownodeconfiguration-properties"></a>

`GuardrailConfiguration`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-guardrailconfiguration"></a>
Contains configurations for a guardrail to apply during query and response generation for the knowledge base in this configuration.  
*Required*: No  
*Type*: [GuardrailConfiguration](aws-properties-bedrock-flowversion-guardrailconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfiguration`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-inferenceconfiguration"></a>
Contains inference configurations for the prompt.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-flowversion-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBaseId`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-knowledgebaseid"></a>
The unique identifier of the knowledge base to query.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z]+$`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelId`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-modelid"></a>
The unique identifier of the model or [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html) to use to generate a response from the query results. Omit this field if you want to return the retrieved results as an array.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NumberOfResults`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-numberofresults"></a>
The number of results to retrieve from the knowledge base.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OrchestrationConfiguration`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-orchestrationconfiguration"></a>
The configuration for orchestrating the retrieval and generation process in the knowledge base node.  
*Required*: No  
*Type*: [KnowledgeBaseOrchestrationConfiguration](aws-properties-bedrock-flowversion-knowledgebaseorchestrationconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptTemplate`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-prompttemplate"></a>
A custom prompt template to use with the knowledge base for generating responses.  
*Required*: No  
*Type*: [KnowledgeBasePromptTemplate](aws-properties-bedrock-flowversion-knowledgebaseprompttemplate.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RerankingConfiguration`  <a name="cfn-bedrock-flowversion-knowledgebaseflownodeconfiguration-rerankingconfiguration"></a>
The configuration for reranking the retrieved results from the knowledge base to improve relevance.  
*Required*: No  
*Type*: [VectorSearchRerankingConfiguration](aws-properties-bedrock-flowversion-vectorsearchrerankingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion KnowledgeBaseOrchestrationConfiguration
<a name="aws-properties-bedrock-flowversion-knowledgebaseorchestrationconfiguration"></a>

Configures how the knowledge base orchestrates the retrieval and generation process, allowing for customization of prompts, inference parameters, and performance settings.

## Syntax
<a name="aws-properties-bedrock-flowversion-knowledgebaseorchestrationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-knowledgebaseorchestrationconfiguration-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-additionalmodelrequestfields)" : Json,
  "[InferenceConfig](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-inferenceconfig)" : PromptInferenceConfiguration,
  "[PerformanceConfig](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-performanceconfig)" : PerformanceConfiguration,
  "[PromptTemplate](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-prompttemplate)" : KnowledgeBasePromptTemplate
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-knowledgebaseorchestrationconfiguration-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-additionalmodelrequestfields): Json
  [InferenceConfig](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-inferenceconfig): 
    PromptInferenceConfiguration
  [PerformanceConfig](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-performanceconfig): 
    PerformanceConfiguration
  [PromptTemplate](#cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-prompttemplate): 
    KnowledgeBasePromptTemplate
```

## Properties
<a name="aws-properties-bedrock-flowversion-knowledgebaseorchestrationconfiguration-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-additionalmodelrequestfields"></a>
The additional model-specific request parameters as key-value pairs to be included in the request to the foundation model.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfig`  <a name="cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-inferenceconfig"></a>
Contains inference configurations for the prompt.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-flowversion-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PerformanceConfig`  <a name="cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-performanceconfig"></a>
The performance configuration options for the knowledge base retrieval and generation process.  
*Required*: No  
*Type*: [PerformanceConfiguration](aws-properties-bedrock-flowversion-performanceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`PromptTemplate`  <a name="cfn-bedrock-flowversion-knowledgebaseorchestrationconfiguration-prompttemplate"></a>
A custom prompt template for orchestrating the retrieval and generation process.  
*Required*: No  
*Type*: [KnowledgeBasePromptTemplate](aws-properties-bedrock-flowversion-knowledgebaseprompttemplate.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion KnowledgeBasePromptTemplate
<a name="aws-properties-bedrock-flowversion-knowledgebaseprompttemplate"></a>

Defines a custom prompt template for orchestrating the retrieval and generation process.

## Syntax
<a name="aws-properties-bedrock-flowversion-knowledgebaseprompttemplate-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-knowledgebaseprompttemplate-syntax.json"></a>

```
{
  "[TextPromptTemplate](#cfn-bedrock-flowversion-knowledgebaseprompttemplate-textprompttemplate)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-knowledgebaseprompttemplate-syntax.yaml"></a>

```
  [TextPromptTemplate](#cfn-bedrock-flowversion-knowledgebaseprompttemplate-textprompttemplate): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-knowledgebaseprompttemplate-properties"></a>

`TextPromptTemplate`  <a name="cfn-bedrock-flowversion-knowledgebaseprompttemplate-textprompttemplate"></a>
The text of the prompt template.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion LambdaFunctionFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-lambdafunctionflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-lambdafunctionflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-lambdafunctionflownodeconfiguration-syntax.json"></a>

```
{
  "[LambdaArn](#cfn-bedrock-flowversion-lambdafunctionflownodeconfiguration-lambdaarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-lambdafunctionflownodeconfiguration-syntax.yaml"></a>

```
  [LambdaArn](#cfn-bedrock-flowversion-lambdafunctionflownodeconfiguration-lambdaarn): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-lambdafunctionflownodeconfiguration-properties"></a>

`LambdaArn`  <a name="cfn-bedrock-flowversion-lambdafunctionflownodeconfiguration-lambdaarn"></a>
The Amazon Resource Name (ARN) of the Lambda function to invoke.  
*Required*: Yes  
*Type*: String  
*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-_]+))?$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion LexFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-lexflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-lexflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-lexflownodeconfiguration-syntax.json"></a>

```
{
  "[BotAliasArn](#cfn-bedrock-flowversion-lexflownodeconfiguration-botaliasarn)" : String,
  "[LocaleId](#cfn-bedrock-flowversion-lexflownodeconfiguration-localeid)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-lexflownodeconfiguration-syntax.yaml"></a>

```
  [BotAliasArn](#cfn-bedrock-flowversion-lexflownodeconfiguration-botaliasarn): String
  [LocaleId](#cfn-bedrock-flowversion-lexflownodeconfiguration-localeid): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-lexflownodeconfiguration-properties"></a>

`BotAliasArn`  <a name="cfn-bedrock-flowversion-lexflownodeconfiguration-botaliasarn"></a>
The Amazon Resource Name (ARN) of the Amazon Lex bot alias to invoke.  
*Required*: Yes  
*Type*: String  
*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]+$`  
*Maximum*: `78`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`LocaleId`  <a name="cfn-bedrock-flowversion-lexflownodeconfiguration-localeid"></a>
The Region to invoke the Amazon Lex bot in.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion LoopControllerFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-loopcontrollerflownodeconfiguration"></a>

Contains configurations for the controller node of a DoWhile loop in the flow.

## Syntax
<a name="aws-properties-bedrock-flowversion-loopcontrollerflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-loopcontrollerflownodeconfiguration-syntax.json"></a>

```
{
  "[ContinueCondition](#cfn-bedrock-flowversion-loopcontrollerflownodeconfiguration-continuecondition)" : FlowCondition,
  "[MaxIterations](#cfn-bedrock-flowversion-loopcontrollerflownodeconfiguration-maxiterations)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-loopcontrollerflownodeconfiguration-syntax.yaml"></a>

```
  [ContinueCondition](#cfn-bedrock-flowversion-loopcontrollerflownodeconfiguration-continuecondition): 
    FlowCondition
  [MaxIterations](#cfn-bedrock-flowversion-loopcontrollerflownodeconfiguration-maxiterations): Number
```

## Properties
<a name="aws-properties-bedrock-flowversion-loopcontrollerflownodeconfiguration-properties"></a>

`ContinueCondition`  <a name="cfn-bedrock-flowversion-loopcontrollerflownodeconfiguration-continuecondition"></a>
Specifies the condition that determines when the flow exits the DoWhile loop. The loop executes until this condition evaluates to true.  
*Required*: Yes  
*Type*: [FlowCondition](aws-properties-bedrock-flowversion-flowcondition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`MaxIterations`  <a name="cfn-bedrock-flowversion-loopcontrollerflownodeconfiguration-maxiterations"></a>
Specifies the maximum number of times the DoWhile loop can iterate before the flow exits the loop.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion LoopFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-loopflownodeconfiguration"></a>

Contains configurations for the nodes of a DoWhile loop in your flow.

A DoWhile loop is made up of the following nodes:
+ `Loop` - The container node that holds the loop's flow definition. This node encompasses the entire loop structure.
+ `LoopInput` - The entry point node for the loop. This node receives inputs from nodes outside the loop and from previous loop iterations.
+ Body nodes - The processing nodes that execute within each loop iteration. These can be nodes for handling data in your flow, such as a prompt or Lambda function nodes. Some node types aren't supported inside a DoWhile loop body. For more information, see [LoopIncompatibleNodeTypeFlowValidationDetails](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_LoopIncompatibleNodeTypeFlowValidationDetails.html).
+ `LoopController` - The node that evaluates whether the loop should continue or exit based on a condition.

These nodes work together to create a loop that runs at least once and continues until a specified condition is met or a maximum number of iterations is reached.

## Syntax
<a name="aws-properties-bedrock-flowversion-loopflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-loopflownodeconfiguration-syntax.json"></a>

```
{
  "[Definition](#cfn-bedrock-flowversion-loopflownodeconfiguration-definition)" : FlowDefinition
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-loopflownodeconfiguration-syntax.yaml"></a>

```
  [Definition](#cfn-bedrock-flowversion-loopflownodeconfiguration-definition): 
    FlowDefinition
```

## Properties
<a name="aws-properties-bedrock-flowversion-loopflownodeconfiguration-properties"></a>

`Definition`  <a name="cfn-bedrock-flowversion-loopflownodeconfiguration-definition"></a>
The definition of the DoWhile loop nodes and connections between nodes in the flow.  
*Required*: Yes  
*Type*: [FlowDefinition](aws-properties-bedrock-flowversion-flowdefinition.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion MetadataConfigurationForReranking
<a name="aws-properties-bedrock-flowversion-metadataconfigurationforreranking"></a>

Configuration for how metadata should be used during the reranking process in Knowledge Base vector searches. This determines which metadata fields are included or excluded when reordering search results.

## Syntax
<a name="aws-properties-bedrock-flowversion-metadataconfigurationforreranking-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-metadataconfigurationforreranking-syntax.json"></a>

```
{
  "[SelectionMode](#cfn-bedrock-flowversion-metadataconfigurationforreranking-selectionmode)" : String,
  "[SelectiveModeConfiguration](#cfn-bedrock-flowversion-metadataconfigurationforreranking-selectivemodeconfiguration)" : RerankingMetadataSelectiveModeConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-metadataconfigurationforreranking-syntax.yaml"></a>

```
  [SelectionMode](#cfn-bedrock-flowversion-metadataconfigurationforreranking-selectionmode): String
  [SelectiveModeConfiguration](#cfn-bedrock-flowversion-metadataconfigurationforreranking-selectivemodeconfiguration): 
    RerankingMetadataSelectiveModeConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-metadataconfigurationforreranking-properties"></a>

`SelectionMode`  <a name="cfn-bedrock-flowversion-metadataconfigurationforreranking-selectionmode"></a>
The mode for selecting which metadata fields to include in the reranking process. Valid values are ALL (use all available metadata fields) or SELECTIVE (use only specified fields).  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SELECTIVE | ALL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SelectiveModeConfiguration`  <a name="cfn-bedrock-flowversion-metadataconfigurationforreranking-selectivemodeconfiguration"></a>
Configuration for selective mode, which allows you to explicitly include or exclude specific metadata fields during reranking. This is only used when selectionMode is set to SELECTIVE.  
*Required*: No  
*Type*: [RerankingMetadataSelectiveModeConfiguration](aws-properties-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PerformanceConfiguration
<a name="aws-properties-bedrock-flowversion-performanceconfiguration"></a>

Performance settings for a model.

## Syntax
<a name="aws-properties-bedrock-flowversion-performanceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-performanceconfiguration-syntax.json"></a>

```
{
  "[Latency](#cfn-bedrock-flowversion-performanceconfiguration-latency)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-performanceconfiguration-syntax.yaml"></a>

```
  [Latency](#cfn-bedrock-flowversion-performanceconfiguration-latency): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-performanceconfiguration-properties"></a>

`Latency`  <a name="cfn-bedrock-flowversion-performanceconfiguration-latency"></a>
To use a latency-optimized version of the model, set to `optimized`.  
*Required*: No  
*Type*: String  
*Allowed values*: `standard | optimized`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-promptflownodeconfiguration"></a>

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 a flow](https://docs.aws.amazon.com/bedrock/latest/userguide/flows-nodes.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-flowversion-promptflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptflownodeconfiguration-syntax.json"></a>

```
{
  "[GuardrailConfiguration](#cfn-bedrock-flowversion-promptflownodeconfiguration-guardrailconfiguration)" : GuardrailConfiguration,
  "[SourceConfiguration](#cfn-bedrock-flowversion-promptflownodeconfiguration-sourceconfiguration)" : PromptFlowNodeSourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptflownodeconfiguration-syntax.yaml"></a>

```
  [GuardrailConfiguration](#cfn-bedrock-flowversion-promptflownodeconfiguration-guardrailconfiguration): 
    GuardrailConfiguration
  [SourceConfiguration](#cfn-bedrock-flowversion-promptflownodeconfiguration-sourceconfiguration): 
    PromptFlowNodeSourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptflownodeconfiguration-properties"></a>

`GuardrailConfiguration`  <a name="cfn-bedrock-flowversion-promptflownodeconfiguration-guardrailconfiguration"></a>
Contains configurations for a guardrail to apply to the prompt in this node and the response generated from it.  
*Required*: No  
*Type*: [GuardrailConfiguration](aws-properties-bedrock-flowversion-guardrailconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SourceConfiguration`  <a name="cfn-bedrock-flowversion-promptflownodeconfiguration-sourceconfiguration"></a>
Specifies whether the prompt is from Prompt management or defined inline.  
*Required*: Yes  
*Type*: [PromptFlowNodeSourceConfiguration](aws-properties-bedrock-flowversion-promptflownodesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptFlowNodeInlineConfiguration
<a name="aws-properties-bedrock-flowversion-promptflownodeinlineconfiguration"></a>

Contains configurations for a prompt defined inline in the node.

## Syntax
<a name="aws-properties-bedrock-flowversion-promptflownodeinlineconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptflownodeinlineconfiguration-syntax.json"></a>

```
{
  "[InferenceConfiguration](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-inferenceconfiguration)" : PromptInferenceConfiguration,
  "[ModelId](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-modelid)" : String,
  "[TemplateConfiguration](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-templateconfiguration)" : PromptTemplateConfiguration,
  "[TemplateType](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-templatetype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptflownodeinlineconfiguration-syntax.yaml"></a>

```
  [InferenceConfiguration](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-inferenceconfiguration): 
    PromptInferenceConfiguration
  [ModelId](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-modelid): String
  [TemplateConfiguration](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-templateconfiguration): 
    PromptTemplateConfiguration
  [TemplateType](#cfn-bedrock-flowversion-promptflownodeinlineconfiguration-templatetype): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptflownodeinlineconfiguration-properties"></a>

`InferenceConfiguration`  <a name="cfn-bedrock-flowversion-promptflownodeinlineconfiguration-inferenceconfiguration"></a>
Contains inference configurations for the prompt.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-flowversion-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelId`  <a name="cfn-bedrock-flowversion-promptflownodeinlineconfiguration-modelid"></a>
The unique identifier of the model or [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html) to run inference with.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateConfiguration`  <a name="cfn-bedrock-flowversion-promptflownodeinlineconfiguration-templateconfiguration"></a>
Contains a prompt and variables in the prompt that can be replaced with values at runtime.  
*Required*: Yes  
*Type*: [PromptTemplateConfiguration](aws-properties-bedrock-flowversion-prompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateType`  <a name="cfn-bedrock-flowversion-promptflownodeinlineconfiguration-templatetype"></a>
The type of prompt template.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `TEXT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptFlowNodeResourceConfiguration
<a name="aws-properties-bedrock-flowversion-promptflownoderesourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flowversion-promptflownoderesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptflownoderesourceconfiguration-syntax.json"></a>

```
{
  "[PromptArn](#cfn-bedrock-flowversion-promptflownoderesourceconfiguration-promptarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptflownoderesourceconfiguration-syntax.yaml"></a>

```
  [PromptArn](#cfn-bedrock-flowversion-promptflownoderesourceconfiguration-promptarn): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptflownoderesourceconfiguration-properties"></a>

`PromptArn`  <a name="cfn-bedrock-flowversion-promptflownoderesourceconfiguration-promptarn"></a>
The Amazon Resource Name (ARN) of the prompt from Prompt management.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10}(?::[0-9]{1,5})?)$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptFlowNodeSourceConfiguration
<a name="aws-properties-bedrock-flowversion-promptflownodesourceconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flowversion-promptflownodesourceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptflownodesourceconfiguration-syntax.json"></a>

```
{
  "[Inline](#cfn-bedrock-flowversion-promptflownodesourceconfiguration-inline)" : PromptFlowNodeInlineConfiguration,
  "[Resource](#cfn-bedrock-flowversion-promptflownodesourceconfiguration-resource)" : PromptFlowNodeResourceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptflownodesourceconfiguration-syntax.yaml"></a>

```
  [Inline](#cfn-bedrock-flowversion-promptflownodesourceconfiguration-inline): 
    PromptFlowNodeInlineConfiguration
  [Resource](#cfn-bedrock-flowversion-promptflownodesourceconfiguration-resource): 
    PromptFlowNodeResourceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptflownodesourceconfiguration-properties"></a>

`Inline`  <a name="cfn-bedrock-flowversion-promptflownodesourceconfiguration-inline"></a>
Contains configurations for a prompt that is defined inline  
*Required*: No  
*Type*: [PromptFlowNodeInlineConfiguration](aws-properties-bedrock-flowversion-promptflownodeinlineconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Resource`  <a name="cfn-bedrock-flowversion-promptflownodesourceconfiguration-resource"></a>
Contains configurations for a prompt from Prompt management.  
*Required*: No  
*Type*: [PromptFlowNodeResourceConfiguration](aws-properties-bedrock-flowversion-promptflownoderesourceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptInferenceConfiguration
<a name="aws-properties-bedrock-flowversion-promptinferenceconfiguration"></a>

Contains inference configurations for the prompt.

## Syntax
<a name="aws-properties-bedrock-flowversion-promptinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptinferenceconfiguration-syntax.json"></a>

```
{
  "[Text](#cfn-bedrock-flowversion-promptinferenceconfiguration-text)" : PromptModelInferenceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptinferenceconfiguration-syntax.yaml"></a>

```
  [Text](#cfn-bedrock-flowversion-promptinferenceconfiguration-text): 
    PromptModelInferenceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptinferenceconfiguration-properties"></a>

`Text`  <a name="cfn-bedrock-flowversion-promptinferenceconfiguration-text"></a>
Contains inference configurations for a text prompt.  
*Required*: Yes  
*Type*: [PromptModelInferenceConfiguration](aws-properties-bedrock-flowversion-promptmodelinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptInputVariable
<a name="aws-properties-bedrock-flowversion-promptinputvariable"></a>

Contains information about a variable in the prompt.

## Syntax
<a name="aws-properties-bedrock-flowversion-promptinputvariable-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptinputvariable-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-flowversion-promptinputvariable-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptinputvariable-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-flowversion-promptinputvariable-name): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptinputvariable-properties"></a>

`Name`  <a name="cfn-bedrock-flowversion-promptinputvariable-name"></a>
The name of the variable.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptModelInferenceConfiguration
<a name="aws-properties-bedrock-flowversion-promptmodelinferenceconfiguration"></a>

Contains inference configurations related to model inference for a prompt. For more information, see [Inference parameters](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-parameters.html).

## Syntax
<a name="aws-properties-bedrock-flowversion-promptmodelinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-promptmodelinferenceconfiguration-syntax.json"></a>

```
{
  "[MaxTokens](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-maxtokens)" : Number,
  "[StopSequences](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-stopsequences)" : [ String, ... ],
  "[Temperature](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-temperature)" : Number,
  "[TopP](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-topp)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-promptmodelinferenceconfiguration-syntax.yaml"></a>

```
  [MaxTokens](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-maxtokens): Number
  [StopSequences](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-stopsequences): 
    - String
  [Temperature](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-temperature): Number
  [TopP](#cfn-bedrock-flowversion-promptmodelinferenceconfiguration-topp): Number
```

## Properties
<a name="aws-properties-bedrock-flowversion-promptmodelinferenceconfiguration-properties"></a>

`MaxTokens`  <a name="cfn-bedrock-flowversion-promptmodelinferenceconfiguration-maxtokens"></a>
The maximum number of tokens to return in the response.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `4096`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StopSequences`  <a name="cfn-bedrock-flowversion-promptmodelinferenceconfiguration-stopsequences"></a>
A list of strings that define sequences after which the model will stop generating.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `4`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Temperature`  <a name="cfn-bedrock-flowversion-promptmodelinferenceconfiguration-temperature"></a>
Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopP`  <a name="cfn-bedrock-flowversion-promptmodelinferenceconfiguration-topp"></a>
The percentage of most-likely candidates that the model considers for the next token.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion PromptTemplateConfiguration
<a name="aws-properties-bedrock-flowversion-prompttemplateconfiguration"></a>

Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html).

## Syntax
<a name="aws-properties-bedrock-flowversion-prompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-prompttemplateconfiguration-syntax.json"></a>

```
{
  "[Text](#cfn-bedrock-flowversion-prompttemplateconfiguration-text)" : TextPromptTemplateConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-prompttemplateconfiguration-syntax.yaml"></a>

```
  [Text](#cfn-bedrock-flowversion-prompttemplateconfiguration-text): 
    TextPromptTemplateConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-prompttemplateconfiguration-properties"></a>

`Text`  <a name="cfn-bedrock-flowversion-prompttemplateconfiguration-text"></a>
Contains configurations for the text in a message for a prompt.  
*Required*: Yes  
*Type*: [TextPromptTemplateConfiguration](aws-properties-bedrock-flowversion-textprompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion RerankingMetadataSelectiveModeConfiguration
<a name="aws-properties-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration"></a>

Configuration for selectively including or excluding metadata fields during the reranking process. This allows you to control which metadata attributes are considered when reordering search results.

## Syntax
<a name="aws-properties-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-syntax.json"></a>

```
{
  "[FieldsToExclude](#cfn-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-fieldstoexclude)" : [ FieldForReranking, ... ],
  "[FieldsToInclude](#cfn-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-fieldstoinclude)" : [ FieldForReranking, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-syntax.yaml"></a>

```
  [FieldsToExclude](#cfn-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-fieldstoexclude): 
    - FieldForReranking
  [FieldsToInclude](#cfn-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-fieldstoinclude): 
    - FieldForReranking
```

## Properties
<a name="aws-properties-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-properties"></a>

`FieldsToExclude`  <a name="cfn-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-fieldstoexclude"></a>
A list of metadata field names to explicitly exclude from the reranking process. All metadata fields except these will be considered when reordering search results. This parameter cannot be used together with fieldsToInclude.  
*Required*: No  
*Type*: Array of [FieldForReranking](aws-properties-bedrock-flowversion-fieldforreranking.md)  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FieldsToInclude`  <a name="cfn-bedrock-flowversion-rerankingmetadataselectivemodeconfiguration-fieldstoinclude"></a>
A list of metadata field names to explicitly include in the reranking process. Only these fields will be considered when reordering search results. This parameter cannot be used together with fieldsToExclude.  
*Required*: No  
*Type*: Array of [FieldForReranking](aws-properties-bedrock-flowversion-fieldforreranking.md)  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion RetrievalFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-retrievalflownodeconfiguration"></a>

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.

## Syntax
<a name="aws-properties-bedrock-flowversion-retrievalflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-retrievalflownodeconfiguration-syntax.json"></a>

```
{
  "[ServiceConfiguration](#cfn-bedrock-flowversion-retrievalflownodeconfiguration-serviceconfiguration)" : RetrievalFlowNodeServiceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-retrievalflownodeconfiguration-syntax.yaml"></a>

```
  [ServiceConfiguration](#cfn-bedrock-flowversion-retrievalflownodeconfiguration-serviceconfiguration): 
    RetrievalFlowNodeServiceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-retrievalflownodeconfiguration-properties"></a>

`ServiceConfiguration`  <a name="cfn-bedrock-flowversion-retrievalflownodeconfiguration-serviceconfiguration"></a>
Contains configurations for the service to use for retrieving data to return as the output from the node.  
*Required*: Yes  
*Type*: [RetrievalFlowNodeServiceConfiguration](aws-properties-bedrock-flowversion-retrievalflownodeserviceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion RetrievalFlowNodeS3Configuration
<a name="aws-properties-bedrock-flowversion-retrievalflownodes3configuration"></a>

Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.

## Syntax
<a name="aws-properties-bedrock-flowversion-retrievalflownodes3configuration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-retrievalflownodes3configuration-syntax.json"></a>

```
{
  "[BucketName](#cfn-bedrock-flowversion-retrievalflownodes3configuration-bucketname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-retrievalflownodes3configuration-syntax.yaml"></a>

```
  [BucketName](#cfn-bedrock-flowversion-retrievalflownodes3configuration-bucketname): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-retrievalflownodes3configuration-properties"></a>

`BucketName`  <a name="cfn-bedrock-flowversion-retrievalflownodes3configuration-bucketname"></a>
The name of the Amazon S3 bucket from which to retrieve data.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion RetrievalFlowNodeServiceConfiguration
<a name="aws-properties-bedrock-flowversion-retrievalflownodeserviceconfiguration"></a>

Contains configurations for the service to use for retrieving data to return as the output from the node.

## Syntax
<a name="aws-properties-bedrock-flowversion-retrievalflownodeserviceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-retrievalflownodeserviceconfiguration-syntax.json"></a>

```
{
  "[S3](#cfn-bedrock-flowversion-retrievalflownodeserviceconfiguration-s3)" : RetrievalFlowNodeS3Configuration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-retrievalflownodeserviceconfiguration-syntax.yaml"></a>

```
  [S3](#cfn-bedrock-flowversion-retrievalflownodeserviceconfiguration-s3): 
    RetrievalFlowNodeS3Configuration
```

## Properties
<a name="aws-properties-bedrock-flowversion-retrievalflownodeserviceconfiguration-properties"></a>

`S3`  <a name="cfn-bedrock-flowversion-retrievalflownodeserviceconfiguration-s3"></a>
Contains configurations for the Amazon S3 location from which to retrieve data to return as the output from the node.  
*Required*: No  
*Type*: [RetrievalFlowNodeS3Configuration](aws-properties-bedrock-flowversion-retrievalflownodes3configuration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion StorageFlowNodeConfiguration
<a name="aws-properties-bedrock-flowversion-storageflownodeconfiguration"></a>

Contains configurations for a Storage node in a flow. This node stores the input in an Amazon S3 location that you specify.

## Syntax
<a name="aws-properties-bedrock-flowversion-storageflownodeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-storageflownodeconfiguration-syntax.json"></a>

```
{
  "[ServiceConfiguration](#cfn-bedrock-flowversion-storageflownodeconfiguration-serviceconfiguration)" : StorageFlowNodeServiceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-storageflownodeconfiguration-syntax.yaml"></a>

```
  [ServiceConfiguration](#cfn-bedrock-flowversion-storageflownodeconfiguration-serviceconfiguration): 
    StorageFlowNodeServiceConfiguration
```

## Properties
<a name="aws-properties-bedrock-flowversion-storageflownodeconfiguration-properties"></a>

`ServiceConfiguration`  <a name="cfn-bedrock-flowversion-storageflownodeconfiguration-serviceconfiguration"></a>
Contains configurations for the service to use for storing the input into the node.  
*Required*: Yes  
*Type*: [StorageFlowNodeServiceConfiguration](aws-properties-bedrock-flowversion-storageflownodeserviceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion StorageFlowNodeS3Configuration
<a name="aws-properties-bedrock-flowversion-storageflownodes3configuration"></a>

Contains configurations for the Amazon S3 location in which to store the input into the node.

## Syntax
<a name="aws-properties-bedrock-flowversion-storageflownodes3configuration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-storageflownodes3configuration-syntax.json"></a>

```
{
  "[BucketName](#cfn-bedrock-flowversion-storageflownodes3configuration-bucketname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-storageflownodes3configuration-syntax.yaml"></a>

```
  [BucketName](#cfn-bedrock-flowversion-storageflownodes3configuration-bucketname): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-storageflownodes3configuration-properties"></a>

`BucketName`  <a name="cfn-bedrock-flowversion-storageflownodes3configuration-bucketname"></a>
The name of the Amazon S3 bucket in which to store the input into the node.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion StorageFlowNodeServiceConfiguration
<a name="aws-properties-bedrock-flowversion-storageflownodeserviceconfiguration"></a>

Contains configurations for the service to use for storing the input into the node.

## Syntax
<a name="aws-properties-bedrock-flowversion-storageflownodeserviceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-storageflownodeserviceconfiguration-syntax.json"></a>

```
{
  "[S3](#cfn-bedrock-flowversion-storageflownodeserviceconfiguration-s3)" : StorageFlowNodeS3Configuration
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-storageflownodeserviceconfiguration-syntax.yaml"></a>

```
  [S3](#cfn-bedrock-flowversion-storageflownodeserviceconfiguration-s3): 
    StorageFlowNodeS3Configuration
```

## Properties
<a name="aws-properties-bedrock-flowversion-storageflownodeserviceconfiguration-properties"></a>

`S3`  <a name="cfn-bedrock-flowversion-storageflownodeserviceconfiguration-s3"></a>
Contains configurations for the Amazon S3 location in which to store the input into the node.  
*Required*: No  
*Type*: [StorageFlowNodeS3Configuration](aws-properties-bedrock-flowversion-storageflownodes3configuration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion TextPromptTemplateConfiguration
<a name="aws-properties-bedrock-flowversion-textprompttemplateconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-flowversion-textprompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-textprompttemplateconfiguration-syntax.json"></a>

```
{
  "[InputVariables](#cfn-bedrock-flowversion-textprompttemplateconfiguration-inputvariables)" : [ PromptInputVariable, ... ],
  "[Text](#cfn-bedrock-flowversion-textprompttemplateconfiguration-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-textprompttemplateconfiguration-syntax.yaml"></a>

```
  [InputVariables](#cfn-bedrock-flowversion-textprompttemplateconfiguration-inputvariables): 
    - PromptInputVariable
  [Text](#cfn-bedrock-flowversion-textprompttemplateconfiguration-text): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-textprompttemplateconfiguration-properties"></a>

`InputVariables`  <a name="cfn-bedrock-flowversion-textprompttemplateconfiguration-inputvariables"></a>
An array of the variables in the prompt template.  
*Required*: No  
*Type*: Array of [PromptInputVariable](aws-properties-bedrock-flowversion-promptinputvariable.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-flowversion-textprompttemplateconfiguration-text"></a>
The message for the prompt.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion VectorSearchBedrockRerankingConfiguration
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration"></a>

Configuration for using Amazon Bedrock foundation models to rerank Knowledge Base vector search results. This enables more sophisticated relevance ranking using large language models.

## Syntax
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-syntax.json"></a>

```
{
  "[MetadataConfiguration](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-metadataconfiguration)" : MetadataConfigurationForReranking,
  "[ModelConfiguration](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-modelconfiguration)" : VectorSearchBedrockRerankingModelConfiguration,
  "[NumberOfRerankedResults](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-numberofrerankedresults)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-syntax.yaml"></a>

```
  [MetadataConfiguration](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-metadataconfiguration): 
    MetadataConfigurationForReranking
  [ModelConfiguration](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-modelconfiguration): 
    VectorSearchBedrockRerankingModelConfiguration
  [NumberOfRerankedResults](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-numberofrerankedresults): 
    Number
```

## Properties
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-properties"></a>

`MetadataConfiguration`  <a name="cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-metadataconfiguration"></a>
Configuration for how document metadata should be used during the reranking process. This determines which metadata fields are included when reordering search results.  
*Required*: No  
*Type*: [MetadataConfigurationForReranking](aws-properties-bedrock-flowversion-metadataconfigurationforreranking.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelConfiguration`  <a name="cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-modelconfiguration"></a>
Configuration for the Amazon Bedrock foundation model used for reranking. This includes the model ARN and any additional request fields required by the model.  
*Required*: Yes  
*Type*: [VectorSearchBedrockRerankingModelConfiguration](aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`NumberOfRerankedResults`  <a name="cfn-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration-numberofrerankedresults"></a>
The maximum number of results to rerank. This limits how many of the initial vector search results will be processed by the reranking model. A smaller number improves performance but may exclude potentially relevant results.  
*Required*: No  
*Type*: Number  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion VectorSearchBedrockRerankingModelConfiguration
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration"></a>

Configuration for the Amazon Bedrock foundation model used for reranking vector search results. This specifies which model to use and any additional parameters required by the model.

## Syntax
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-additionalmodelrequestfields)" : Json,
  "[ModelArn](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-modelarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-additionalmodelrequestfields): Json
  [ModelArn](#cfn-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-modelarn): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-additionalmodelrequestfields"></a>
A list of additional fields to include in the model request during reranking. These fields provide extra context or configuration options specific to the selected foundation model.  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelArn`  <a name="cfn-bedrock-flowversion-vectorsearchbedrockrerankingmodelconfiguration-modelarn"></a>
The Amazon Resource Name (ARN) of the foundation model to use for reranking. This model processes the query and search results to determine a more relevant ordering.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/(.*))?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::FlowVersion VectorSearchRerankingConfiguration
<a name="aws-properties-bedrock-flowversion-vectorsearchrerankingconfiguration"></a>

Configuration for reranking vector search results to improve relevance. Reranking applies additional relevance models to reorder the initial vector search results based on more sophisticated criteria.

## Syntax
<a name="aws-properties-bedrock-flowversion-vectorsearchrerankingconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-flowversion-vectorsearchrerankingconfiguration-syntax.json"></a>

```
{
  "[BedrockRerankingConfiguration](#cfn-bedrock-flowversion-vectorsearchrerankingconfiguration-bedrockrerankingconfiguration)" : VectorSearchBedrockRerankingConfiguration,
  "[Type](#cfn-bedrock-flowversion-vectorsearchrerankingconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-flowversion-vectorsearchrerankingconfiguration-syntax.yaml"></a>

```
  [BedrockRerankingConfiguration](#cfn-bedrock-flowversion-vectorsearchrerankingconfiguration-bedrockrerankingconfiguration): 
    VectorSearchBedrockRerankingConfiguration
  [Type](#cfn-bedrock-flowversion-vectorsearchrerankingconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-flowversion-vectorsearchrerankingconfiguration-properties"></a>

`BedrockRerankingConfiguration`  <a name="cfn-bedrock-flowversion-vectorsearchrerankingconfiguration-bedrockrerankingconfiguration"></a>
Configuration for using Amazon Bedrock foundation models to rerank search results. This is required when the reranking type is set to BEDROCK.  
*Required*: No  
*Type*: [VectorSearchBedrockRerankingConfiguration](aws-properties-bedrock-flowversion-vectorsearchbedrockrerankingconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-flowversion-vectorsearchrerankingconfiguration-type"></a>
The type of reranking to apply to vector search results. Currently, the only supported value is BEDROCK, which uses Amazon Bedrock foundation models for reranking.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BEDROCK_RERANKING_MODEL`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail
<a name="aws-resource-bedrock-guardrail"></a>

Creates a guardrail to detect and filter harmful content in your generative AI application.

Amazon Bedrock Guardrails provides the following safeguards (also known as policies) to detect and filter harmful content:
+ **Content filters** - Detect and filter harmful text or image content in input prompts or model responses. Filtering is done based on detection of certain predefined harmful content categories: Hate, Insults, Sexual, Violence, Misconduct and Prompt Attack. You also can adjust the filter strength for each of these categories.
+ **Denied topics** - Define a set of topics that are undesirable in the context of your application. The filter will help block them if detected in user queries or model responses.
+ **Word filters** - Configure filters to help block undesirable words, phrases, and profanity (exact match). Such words can include offensive terms, competitor names, etc.
+ **Sensitive information filters** - Configure filters to help block or mask sensitive information, such as personally identifiable information (PII), or custom regex in user inputs and model responses. Blocking or masking is done based on probabilistic detection of sensitive information in standard formats in entities such as SSN number, Date of Birth, address, etc. This also allows configuring regular expression based detection of patterns for identifiers.
+ **Contextual grounding check** - Help detect and filter hallucinations in model responses based on grounding in a source and relevance to the user query.

For more information, see [How Amazon Bedrock Guardrails works](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-how.html).

## Syntax
<a name="aws-resource-bedrock-guardrail-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-guardrail-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::Guardrail",
  "Properties" : {
      "[AutomatedReasoningPolicyConfig](#cfn-bedrock-guardrail-automatedreasoningpolicyconfig)" : AutomatedReasoningPolicyConfig,
      "[BlockedInputMessaging](#cfn-bedrock-guardrail-blockedinputmessaging)" : String,
      "[BlockedOutputsMessaging](#cfn-bedrock-guardrail-blockedoutputsmessaging)" : String,
      "[ContentPolicyConfig](#cfn-bedrock-guardrail-contentpolicyconfig)" : ContentPolicyConfig,
      "[ContextualGroundingPolicyConfig](#cfn-bedrock-guardrail-contextualgroundingpolicyconfig)" : ContextualGroundingPolicyConfig,
      "[CrossRegionConfig](#cfn-bedrock-guardrail-crossregionconfig)" : GuardrailCrossRegionConfig,
      "[Description](#cfn-bedrock-guardrail-description)" : String,
      "[KmsKeyArn](#cfn-bedrock-guardrail-kmskeyarn)" : String,
      "[Name](#cfn-bedrock-guardrail-name)" : String,
      "[SensitiveInformationPolicyConfig](#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig)" : SensitiveInformationPolicyConfig,
      "[Tags](#cfn-bedrock-guardrail-tags)" : [ Tag, ... ],
      "[TopicPolicyConfig](#cfn-bedrock-guardrail-topicpolicyconfig)" : TopicPolicyConfig,
      "[WordPolicyConfig](#cfn-bedrock-guardrail-wordpolicyconfig)" : WordPolicyConfig
    }
}
```

### YAML
<a name="aws-resource-bedrock-guardrail-syntax.yaml"></a>

```
Type: AWS::Bedrock::Guardrail
Properties:
  [AutomatedReasoningPolicyConfig](#cfn-bedrock-guardrail-automatedreasoningpolicyconfig): 
    AutomatedReasoningPolicyConfig
  [BlockedInputMessaging](#cfn-bedrock-guardrail-blockedinputmessaging): String
  [BlockedOutputsMessaging](#cfn-bedrock-guardrail-blockedoutputsmessaging): String
  [ContentPolicyConfig](#cfn-bedrock-guardrail-contentpolicyconfig): 
    ContentPolicyConfig
  [ContextualGroundingPolicyConfig](#cfn-bedrock-guardrail-contextualgroundingpolicyconfig): 
    ContextualGroundingPolicyConfig
  [CrossRegionConfig](#cfn-bedrock-guardrail-crossregionconfig): 
    GuardrailCrossRegionConfig
  [Description](#cfn-bedrock-guardrail-description): String
  [KmsKeyArn](#cfn-bedrock-guardrail-kmskeyarn): String
  [Name](#cfn-bedrock-guardrail-name): String
  [SensitiveInformationPolicyConfig](#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig): 
    SensitiveInformationPolicyConfig
  [Tags](#cfn-bedrock-guardrail-tags): 
    - Tag
  [TopicPolicyConfig](#cfn-bedrock-guardrail-topicpolicyconfig): 
    TopicPolicyConfig
  [WordPolicyConfig](#cfn-bedrock-guardrail-wordpolicyconfig): 
    WordPolicyConfig
```

## Properties
<a name="aws-resource-bedrock-guardrail-properties"></a>

`AutomatedReasoningPolicyConfig`  <a name="cfn-bedrock-guardrail-automatedreasoningpolicyconfig"></a>
Configuration settings for integrating Automated Reasoning policies with Amazon Bedrock Guardrails.  
*Required*: No  
*Type*: [AutomatedReasoningPolicyConfig](aws-properties-bedrock-guardrail-automatedreasoningpolicyconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BlockedInputMessaging`  <a name="cfn-bedrock-guardrail-blockedinputmessaging"></a>
The message to return when the guardrail blocks a prompt.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`BlockedOutputsMessaging`  <a name="cfn-bedrock-guardrail-blockedoutputsmessaging"></a>
The message to return when the guardrail blocks a model response.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `500`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ContentPolicyConfig`  <a name="cfn-bedrock-guardrail-contentpolicyconfig"></a>
The content filter policies to configure for the guardrail.  
*Required*: No  
*Type*: [ContentPolicyConfig](aws-properties-bedrock-guardrail-contentpolicyconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ContextualGroundingPolicyConfig`  <a name="cfn-bedrock-guardrail-contextualgroundingpolicyconfig"></a>
Property description not available.  
*Required*: No  
*Type*: [ContextualGroundingPolicyConfig](aws-properties-bedrock-guardrail-contextualgroundingpolicyconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`CrossRegionConfig`  <a name="cfn-bedrock-guardrail-crossregionconfig"></a>
The system-defined guardrail profile that you're using with your guardrail. Guardrail profiles define the destination AWS Regions where guardrail inference requests can be automatically routed. Using guardrail profiles helps maintain guardrail performance and reliability when demand increases.  
For more information, see the [Amazon Bedrock User Guide](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-cross-region.html).  
*Required*: No  
*Type*: [GuardrailCrossRegionConfig](aws-properties-bedrock-guardrail-guardrailcrossregionconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-guardrail-description"></a>
A description of the guardrail.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KmsKeyArn`  <a name="cfn-bedrock-guardrail-kmskeyarn"></a>
The ARN of the AWS KMS key that you use to encrypt the guardrail.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-guardrail-name"></a>
The name of the guardrail.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z-_]+$`  
*Minimum*: `1`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`SensitiveInformationPolicyConfig`  <a name="cfn-bedrock-guardrail-sensitiveinformationpolicyconfig"></a>
The sensitive information policy to configure for the guardrail.  
*Required*: No  
*Type*: [SensitiveInformationPolicyConfig](aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-guardrail-tags"></a>
The tags that you want to attach to the guardrail.   
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-guardrail-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopicPolicyConfig`  <a name="cfn-bedrock-guardrail-topicpolicyconfig"></a>
The topic policies to configure for the guardrail.  
*Required*: No  
*Type*: [TopicPolicyConfig](aws-properties-bedrock-guardrail-topicpolicyconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WordPolicyConfig`  <a name="cfn-bedrock-guardrail-wordpolicyconfig"></a>
The word policy you configure for the guardrail.  
*Required*: No  
*Type*: [WordPolicyConfig](aws-properties-bedrock-guardrail-wordpolicyconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-guardrail-return-values"></a>

### Ref
<a name="aws-resource-bedrock-guardrail-return-values-ref"></a>

### Fn::GetAtt
<a name="aws-resource-bedrock-guardrail-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-guardrail-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
Timestamp.

`FailureRecommendations`  <a name="FailureRecommendations-fn::getatt"></a>
Appears if the `status` of the guardrail is `FAILED`. A list of recommendations to carry out before retrying the request.

`GuardrailArn`  <a name="GuardrailArn-fn::getatt"></a>
The ARN of the guardrail.

`GuardrailId`  <a name="GuardrailId-fn::getatt"></a>
The unique identifier of the guardrail.

`Status`  <a name="Status-fn::getatt"></a>
The status of the guardrail.

`StatusReasons`  <a name="StatusReasons-fn::getatt"></a>
Appears if the `status` is `FAILED`. A list of reasons for why the guardrail failed to be created, updated, versioned, or deleted.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
Timestamp.

`Version`  <a name="Version-fn::getatt"></a>
The version of the guardrail that was created. This value will always be `DRAFT`.

# AWS::Bedrock::Guardrail AutomatedReasoningPolicyConfig
<a name="aws-properties-bedrock-guardrail-automatedreasoningpolicyconfig"></a>

Configuration settings for integrating Automated Reasoning policies with Amazon Bedrock Guardrails.

## Syntax
<a name="aws-properties-bedrock-guardrail-automatedreasoningpolicyconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-automatedreasoningpolicyconfig-syntax.json"></a>

```
{
  "[ConfidenceThreshold](#cfn-bedrock-guardrail-automatedreasoningpolicyconfig-confidencethreshold)" : Number,
  "[Policies](#cfn-bedrock-guardrail-automatedreasoningpolicyconfig-policies)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-automatedreasoningpolicyconfig-syntax.yaml"></a>

```
  [ConfidenceThreshold](#cfn-bedrock-guardrail-automatedreasoningpolicyconfig-confidencethreshold): Number
  [Policies](#cfn-bedrock-guardrail-automatedreasoningpolicyconfig-policies): 
    - String
```

## Properties
<a name="aws-properties-bedrock-guardrail-automatedreasoningpolicyconfig-properties"></a>

`ConfidenceThreshold`  <a name="cfn-bedrock-guardrail-automatedreasoningpolicyconfig-confidencethreshold"></a>
The minimum confidence level required for Automated Reasoning policy violations to trigger guardrail actions. Values range from 0.0 to 1.0.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Policies`  <a name="cfn-bedrock-guardrail-automatedreasoningpolicyconfig-policies"></a>
The list of Automated Reasoning policy ARNs that should be applied as part of this guardrail configuration.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `15 | 1`  
*Maximum*: `2048 | 2`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail ContentFilterConfig
<a name="aws-properties-bedrock-guardrail-contentfilterconfig"></a>

Contains filter strengths for harmful content. Guardrails support the following content filters to detect and filter harmful user inputs and FM-generated outputs.
+ **Hate** – Describes language or a statement that discriminates, criticizes, insults, denounces, or dehumanizes a person or group on the basis of an identity (such as race, ethnicity, gender, religion, sexual orientation, ability, and national origin).
+ **Insults** – Describes language or a statement that includes demeaning, humiliating, mocking, insulting, or belittling language. This type of language is also labeled as bullying.
+ **Sexual** – Describes language or a statement that indicates sexual interest, activity, or arousal using direct or indirect references to body parts, physical traits, or sex.
+ **Violence** – Describes language or a statement that includes glorification of or threats to inflict physical pain, hurt, or injury toward a person, group or thing.

Content filtering depends on the confidence classification of user inputs and FM responses across each of the four harmful categories. All input and output statements are classified into one of four confidence levels (NONE, LOW, MEDIUM, HIGH) for each harmful category. For example, if a statement is classified as *Hate* with HIGH confidence, the likelihood of the statement representing hateful content is high. A single statement can be classified across multiple categories with varying confidence levels. For example, a single statement can be classified as *Hate* with HIGH confidence, *Insults* with LOW confidence, *Sexual* with NONE confidence, and *Violence* with MEDIUM confidence.

For more information, see [Guardrails content filters](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-filters.html).

## Syntax
<a name="aws-properties-bedrock-guardrail-contentfilterconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-contentfilterconfig-syntax.json"></a>

```
{
  "[InputAction](#cfn-bedrock-guardrail-contentfilterconfig-inputaction)" : String,
  "[InputEnabled](#cfn-bedrock-guardrail-contentfilterconfig-inputenabled)" : Boolean,
  "[InputModalities](#cfn-bedrock-guardrail-contentfilterconfig-inputmodalities)" : [ String, ... ],
  "[InputStrength](#cfn-bedrock-guardrail-contentfilterconfig-inputstrength)" : String,
  "[OutputAction](#cfn-bedrock-guardrail-contentfilterconfig-outputaction)" : String,
  "[OutputEnabled](#cfn-bedrock-guardrail-contentfilterconfig-outputenabled)" : Boolean,
  "[OutputModalities](#cfn-bedrock-guardrail-contentfilterconfig-outputmodalities)" : [ String, ... ],
  "[OutputStrength](#cfn-bedrock-guardrail-contentfilterconfig-outputstrength)" : String,
  "[Type](#cfn-bedrock-guardrail-contentfilterconfig-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-contentfilterconfig-syntax.yaml"></a>

```
  [InputAction](#cfn-bedrock-guardrail-contentfilterconfig-inputaction): String
  [InputEnabled](#cfn-bedrock-guardrail-contentfilterconfig-inputenabled): Boolean
  [InputModalities](#cfn-bedrock-guardrail-contentfilterconfig-inputmodalities): 
    - String
  [InputStrength](#cfn-bedrock-guardrail-contentfilterconfig-inputstrength): String
  [OutputAction](#cfn-bedrock-guardrail-contentfilterconfig-outputaction): String
  [OutputEnabled](#cfn-bedrock-guardrail-contentfilterconfig-outputenabled): Boolean
  [OutputModalities](#cfn-bedrock-guardrail-contentfilterconfig-outputmodalities): 
    - String
  [OutputStrength](#cfn-bedrock-guardrail-contentfilterconfig-outputstrength): String
  [Type](#cfn-bedrock-guardrail-contentfilterconfig-type): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-contentfilterconfig-properties"></a>

`InputAction`  <a name="cfn-bedrock-guardrail-contentfilterconfig-inputaction"></a>
Specifies the action to take when harmful content is detected. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputEnabled`  <a name="cfn-bedrock-guardrail-contentfilterconfig-inputenabled"></a>
Specifies whether to enable guardrail evaluation on the input. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputModalities`  <a name="cfn-bedrock-guardrail-contentfilterconfig-inputmodalities"></a>
The input modalities selected for the guardrail content filter configuration.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputStrength`  <a name="cfn-bedrock-guardrail-contentfilterconfig-inputstrength"></a>
The strength of the content filter to apply to prompts. As you increase the filter strength, the likelihood of filtering harmful content increases and the probability of seeing harmful content in your application reduces.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `NONE | LOW | MEDIUM | HIGH`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputAction`  <a name="cfn-bedrock-guardrail-contentfilterconfig-outputaction"></a>
Specifies the action to take when harmful content is detected in the output. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputEnabled`  <a name="cfn-bedrock-guardrail-contentfilterconfig-outputenabled"></a>
Specifies whether to enable guardrail evaluation on the output. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputModalities`  <a name="cfn-bedrock-guardrail-contentfilterconfig-outputmodalities"></a>
The output modalities selected for the guardrail content filter configuration.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputStrength`  <a name="cfn-bedrock-guardrail-contentfilterconfig-outputstrength"></a>
The strength of the content filter to apply to model responses. As you increase the filter strength, the likelihood of filtering harmful content increases and the probability of seeing harmful content in your application reduces.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `NONE | LOW | MEDIUM | HIGH`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-guardrail-contentfilterconfig-type"></a>
The harmful category that the content filter is applied to.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SEXUAL | VIOLENCE | HATE | INSULTS | MISCONDUCT | PROMPT_ATTACK`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail ContentFiltersTierConfig
<a name="aws-properties-bedrock-guardrail-contentfilterstierconfig"></a>

The tier that your guardrail uses for content filters. Consider using a tier that balances performance, accuracy, and compatibility with your existing generative AI workflows.

## Syntax
<a name="aws-properties-bedrock-guardrail-contentfilterstierconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-contentfilterstierconfig-syntax.json"></a>

```
{
  "[TierName](#cfn-bedrock-guardrail-contentfilterstierconfig-tiername)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-contentfilterstierconfig-syntax.yaml"></a>

```
  [TierName](#cfn-bedrock-guardrail-contentfilterstierconfig-tiername): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-contentfilterstierconfig-properties"></a>

`TierName`  <a name="cfn-bedrock-guardrail-contentfilterstierconfig-tiername"></a>
The tier that your guardrail uses for content filters. Valid values include:  
+ `CLASSIC` tier – Provides established guardrails functionality supporting English, French, and Spanish languages.
+ `STANDARD` tier – Provides a more robust solution than the `CLASSIC` tier and has more comprehensive language support. This tier requires that your guardrail use [cross-Region inference](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-cross-region.html).
*Required*: Yes  
*Type*: String  
*Allowed values*: `CLASSIC | STANDARD`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail ContentPolicyConfig
<a name="aws-properties-bedrock-guardrail-contentpolicyconfig"></a>

Contains details about how to handle harmful content.

## Syntax
<a name="aws-properties-bedrock-guardrail-contentpolicyconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-contentpolicyconfig-syntax.json"></a>

```
{
  "[ContentFiltersTierConfig](#cfn-bedrock-guardrail-contentpolicyconfig-contentfilterstierconfig)" : ContentFiltersTierConfig,
  "[FiltersConfig](#cfn-bedrock-guardrail-contentpolicyconfig-filtersconfig)" : [ ContentFilterConfig, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-contentpolicyconfig-syntax.yaml"></a>

```
  [ContentFiltersTierConfig](#cfn-bedrock-guardrail-contentpolicyconfig-contentfilterstierconfig): 
    ContentFiltersTierConfig
  [FiltersConfig](#cfn-bedrock-guardrail-contentpolicyconfig-filtersconfig): 
    - ContentFilterConfig
```

## Properties
<a name="aws-properties-bedrock-guardrail-contentpolicyconfig-properties"></a>

`ContentFiltersTierConfig`  <a name="cfn-bedrock-guardrail-contentpolicyconfig-contentfilterstierconfig"></a>
The tier that your guardrail uses for content filters. Consider using a tier that balances performance, accuracy, and compatibility with your existing generative AI workflows.  
*Required*: No  
*Type*: [ContentFiltersTierConfig](aws-properties-bedrock-guardrail-contentfilterstierconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`FiltersConfig`  <a name="cfn-bedrock-guardrail-contentpolicyconfig-filtersconfig"></a>
Contains the type of the content filter and how strongly it should apply to prompts and model responses.  
*Required*: Yes  
*Type*: Array of [ContentFilterConfig](aws-properties-bedrock-guardrail-contentfilterconfig.md)  
*Minimum*: `1`  
*Maximum*: `6`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail ContextualGroundingFilterConfig
<a name="aws-properties-bedrock-guardrail-contextualgroundingfilterconfig"></a>

The filter configuration details for the guardrails contextual grounding filter.

## Syntax
<a name="aws-properties-bedrock-guardrail-contextualgroundingfilterconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-contextualgroundingfilterconfig-syntax.json"></a>

```
{
  "[Action](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-action)" : String,
  "[Enabled](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-enabled)" : Boolean,
  "[Threshold](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-threshold)" : Number,
  "[Type](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-contextualgroundingfilterconfig-syntax.yaml"></a>

```
  [Action](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-action): String
  [Enabled](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-enabled): Boolean
  [Threshold](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-threshold): Number
  [Type](#cfn-bedrock-guardrail-contextualgroundingfilterconfig-type): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-contextualgroundingfilterconfig-properties"></a>

`Action`  <a name="cfn-bedrock-guardrail-contextualgroundingfilterconfig-action"></a>
Specifies the action to take when content fails the contextual grounding evaluation. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Enabled`  <a name="cfn-bedrock-guardrail-contextualgroundingfilterconfig-enabled"></a>
Specifies whether to enable contextual grounding evaluation. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Threshold`  <a name="cfn-bedrock-guardrail-contextualgroundingfilterconfig-threshold"></a>
The threshold details for the guardrails contextual grounding filter.  
*Required*: Yes  
*Type*: Number  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-guardrail-contextualgroundingfilterconfig-type"></a>
The filter details for the guardrails contextual grounding filter.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `GROUNDING | RELEVANCE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail ContextualGroundingPolicyConfig
<a name="aws-properties-bedrock-guardrail-contextualgroundingpolicyconfig"></a>

The policy configuration details for the guardrails contextual grounding policy.

## Syntax
<a name="aws-properties-bedrock-guardrail-contextualgroundingpolicyconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-contextualgroundingpolicyconfig-syntax.json"></a>

```
{
  "[FiltersConfig](#cfn-bedrock-guardrail-contextualgroundingpolicyconfig-filtersconfig)" : [ ContextualGroundingFilterConfig, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-contextualgroundingpolicyconfig-syntax.yaml"></a>

```
  [FiltersConfig](#cfn-bedrock-guardrail-contextualgroundingpolicyconfig-filtersconfig): 
    - ContextualGroundingFilterConfig
```

## Properties
<a name="aws-properties-bedrock-guardrail-contextualgroundingpolicyconfig-properties"></a>

`FiltersConfig`  <a name="cfn-bedrock-guardrail-contextualgroundingpolicyconfig-filtersconfig"></a>
Property description not available.  
*Required*: Yes  
*Type*: Array of [ContextualGroundingFilterConfig](aws-properties-bedrock-guardrail-contextualgroundingfilterconfig.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail GuardrailCrossRegionConfig
<a name="aws-properties-bedrock-guardrail-guardrailcrossregionconfig"></a>

The system-defined guardrail profile that you're using with your guardrail. Guardrail profiles define the destination AWS Regions where guardrail inference requests can be automatically routed. Using guardrail profiles helps maintain guardrail performance and reliability when demand increases.

For more information, see the [Amazon Bedrock User Guide](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-cross-region.html).

## Syntax
<a name="aws-properties-bedrock-guardrail-guardrailcrossregionconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-guardrailcrossregionconfig-syntax.json"></a>

```
{
  "[GuardrailProfileArn](#cfn-bedrock-guardrail-guardrailcrossregionconfig-guardrailprofilearn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-guardrailcrossregionconfig-syntax.yaml"></a>

```
  [GuardrailProfileArn](#cfn-bedrock-guardrail-guardrailcrossregionconfig-guardrailprofilearn): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-guardrailcrossregionconfig-properties"></a>

`GuardrailProfileArn`  <a name="cfn-bedrock-guardrail-guardrailcrossregionconfig-guardrailprofilearn"></a>
The Amazon Resource Name (ARN) of the guardrail profile that your guardrail is using. Guardrail profile availability depends on your current AWS Region. For more information, see the [Amazon Bedrock User Guide](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-cross-region-support.html).  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail-profile/[a-z0-9-]+[.]{1}guardrail[.]{1}v[0-9:]+$`  
*Minimum*: `15`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail ManagedWordsConfig
<a name="aws-properties-bedrock-guardrail-managedwordsconfig"></a>

The managed word list to configure for the guardrail.

## Syntax
<a name="aws-properties-bedrock-guardrail-managedwordsconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-managedwordsconfig-syntax.json"></a>

```
{
  "[InputAction](#cfn-bedrock-guardrail-managedwordsconfig-inputaction)" : String,
  "[InputEnabled](#cfn-bedrock-guardrail-managedwordsconfig-inputenabled)" : Boolean,
  "[OutputAction](#cfn-bedrock-guardrail-managedwordsconfig-outputaction)" : String,
  "[OutputEnabled](#cfn-bedrock-guardrail-managedwordsconfig-outputenabled)" : Boolean,
  "[Type](#cfn-bedrock-guardrail-managedwordsconfig-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-managedwordsconfig-syntax.yaml"></a>

```
  [InputAction](#cfn-bedrock-guardrail-managedwordsconfig-inputaction): String
  [InputEnabled](#cfn-bedrock-guardrail-managedwordsconfig-inputenabled): Boolean
  [OutputAction](#cfn-bedrock-guardrail-managedwordsconfig-outputaction): String
  [OutputEnabled](#cfn-bedrock-guardrail-managedwordsconfig-outputenabled): Boolean
  [Type](#cfn-bedrock-guardrail-managedwordsconfig-type): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-managedwordsconfig-properties"></a>

`InputAction`  <a name="cfn-bedrock-guardrail-managedwordsconfig-inputaction"></a>
Specifies the action to take when harmful content is detected in the input. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputEnabled`  <a name="cfn-bedrock-guardrail-managedwordsconfig-inputenabled"></a>
Specifies whether to enable guardrail evaluation on the input. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputAction`  <a name="cfn-bedrock-guardrail-managedwordsconfig-outputaction"></a>
Specifies the action to take when harmful content is detected in the output. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputEnabled`  <a name="cfn-bedrock-guardrail-managedwordsconfig-outputenabled"></a>
Specifies whether to enable guardrail evaluation on the output. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-guardrail-managedwordsconfig-type"></a>
The managed word type to configure for the guardrail.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `PROFANITY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail PiiEntityConfig
<a name="aws-properties-bedrock-guardrail-piientityconfig"></a>

The PII entity to configure for the guardrail.

## Syntax
<a name="aws-properties-bedrock-guardrail-piientityconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-piientityconfig-syntax.json"></a>

```
{
  "[Action](#cfn-bedrock-guardrail-piientityconfig-action)" : String,
  "[InputAction](#cfn-bedrock-guardrail-piientityconfig-inputaction)" : String,
  "[InputEnabled](#cfn-bedrock-guardrail-piientityconfig-inputenabled)" : Boolean,
  "[OutputAction](#cfn-bedrock-guardrail-piientityconfig-outputaction)" : String,
  "[OutputEnabled](#cfn-bedrock-guardrail-piientityconfig-outputenabled)" : Boolean,
  "[Type](#cfn-bedrock-guardrail-piientityconfig-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-piientityconfig-syntax.yaml"></a>

```
  [Action](#cfn-bedrock-guardrail-piientityconfig-action): String
  [InputAction](#cfn-bedrock-guardrail-piientityconfig-inputaction): String
  [InputEnabled](#cfn-bedrock-guardrail-piientityconfig-inputenabled): Boolean
  [OutputAction](#cfn-bedrock-guardrail-piientityconfig-outputaction): String
  [OutputEnabled](#cfn-bedrock-guardrail-piientityconfig-outputenabled): Boolean
  [Type](#cfn-bedrock-guardrail-piientityconfig-type): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-piientityconfig-properties"></a>

`Action`  <a name="cfn-bedrock-guardrail-piientityconfig-action"></a>
Configure guardrail action when the PII entity is detected.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BLOCK | ANONYMIZE | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputAction`  <a name="cfn-bedrock-guardrail-piientityconfig-inputaction"></a>
Specifies the action to take when harmful content is detected in the input. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `ANONYMIZE` – Mask the content and replace it with identifier tags.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | ANONYMIZE | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputEnabled`  <a name="cfn-bedrock-guardrail-piientityconfig-inputenabled"></a>
Specifies whether to enable guardrail evaluation on the input. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputAction`  <a name="cfn-bedrock-guardrail-piientityconfig-outputaction"></a>
Specifies the action to take when harmful content is detected in the output. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `ANONYMIZE` – Mask the content and replace it with identifier tags.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | ANONYMIZE | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputEnabled`  <a name="cfn-bedrock-guardrail-piientityconfig-outputenabled"></a>
Indicates whether guardrail evaluation is enabled on the output. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-guardrail-piientityconfig-type"></a>
Configure guardrail type when the PII entity is detected.  
The following PIIs are used to block or mask sensitive information:  
+  **General** 
  +  **ADDRESS** 

    A physical address, such as "100 Main Street, Anytown, USA" or "Suite \$112, Building 123". An address can include information such as the street, building, location, city, state, country, county, zip code, precinct, and neighborhood. 
  +  **AGE** 

    An individual's age, including the quantity and unit of time. For example, in the phrase "I am 40 years old," Guardrails recognizes "40 years" as an age. 
  +  **NAME** 

    An individual's name. This entity type does not include titles, such as Dr., Mr., Mrs., or Miss. guardrails doesn't apply this entity type to names that are part of organizations or addresses. For example, guardrails recognizes the "John Doe Organization" as an organization, and it recognizes "Jane Doe Street" as an address. 
  +  **EMAIL** 

    An email address, such as *marymajor@email.com*.
  +  **PHONE** 

    A phone number. This entity type also includes fax and pager numbers. 
  +  **USERNAME** 

    A user name that identifies an account, such as a login name, screen name, nick name, or handle. 
  +  **PASSWORD** 

    An alphanumeric string that is used as a password, such as "\$1*very20special\$1pass\$1*". 
  +  **DRIVER\$1ID** 

    The number assigned to a driver's license, which is an official document permitting an individual to operate one or more motorized vehicles on a public road. A driver's license number consists of alphanumeric characters. 
  +  **LICENSE\$1PLATE** 

    A license plate for a vehicle is issued by the state or country where the vehicle is registered. The format for passenger vehicles is typically five to eight digits, consisting of upper-case letters and numbers. The format varies depending on the location of the issuing state or country. 
  +  **VEHICLE\$1IDENTIFICATION\$1NUMBER** 

    A Vehicle Identification Number (VIN) uniquely identifies a vehicle. VIN content and format are defined in the *ISO 3779* specification. Each country has specific codes and formats for VINs. 
+  **Finance** 
  +  **CREDIT\$1DEBIT\$1CARD\$1CVV** 

    A three-digit card verification code (CVV) that is present on VISA, MasterCard, and Discover credit and debit cards. For American Express credit or debit cards, the CVV is a four-digit numeric code. 
  +  **CREDIT\$1DEBIT\$1CARD\$1EXPIRY** 

    The expiration date for a credit or debit card. This number is usually four digits long and is often formatted as *month/year* or *MM/YY*. Guardrails recognizes expiration dates such as *01/21*, *01/2021*, and *Jan 2021*. 
  +  **CREDIT\$1DEBIT\$1CARD\$1NUMBER** 

    The number for a credit or debit card. These numbers can vary from 13 to 16 digits in length. However, Amazon Comprehend also recognizes credit or debit card numbers when only the last four digits are present. 
  +  **PIN** 

    A four-digit personal identification number (PIN) with which you can access your bank account. 
  +  **INTERNATIONAL\$1BANK\$1ACCOUNT\$1NUMBER** 

    An International Bank Account Number has specific formats in each country. For more information, see [www.iban.com/structure](https://www.iban.com/structure).
  +  **SWIFT\$1CODE** 

    A SWIFT code is a standard format of Bank Identifier Code (BIC) used to specify a particular bank or branch. Banks use these codes for money transfers such as international wire transfers.

    SWIFT codes consist of eight or 11 characters. The 11-digit codes refer to specific branches, while eight-digit codes (or 11-digit codes ending in 'XXX') refer to the head or primary office.
+  **IT** 
  +  **IP\$1ADDRESS** 

    An IPv4 address, such as *198.51.100.0*. 
  +  **MAC\$1ADDRESS** 

    A *media access control* (MAC) address is a unique identifier assigned to a network interface controller (NIC). 
  +  **URL** 

    A web address, such as *www.example.com*. 
  +  **AWS\$1ACCESS\$1KEY** 

    A unique identifier that's associated with a secret access key; you use the access key ID and secret access key to sign programmatic AWS requests cryptographically. 
  +  **AWS\$1SECRET\$1KEY** 

    A unique identifier that's associated with an access key. You use the access key ID and secret access key to sign programmatic AWS requests cryptographically. 
+  **USA specific** 
  +  **US\$1BANK\$1ACCOUNT\$1NUMBER** 

    A US bank account number, which is typically 10 to 12 digits long. 
  +  **US\$1BANK\$1ROUTING\$1NUMBER** 

    A US bank account routing number. These are typically nine digits long, 
  +  **US\$1INDIVIDUAL\$1TAX\$1IDENTIFICATION\$1NUMBER** 

    A US Individual Taxpayer Identification Number (ITIN) is a nine-digit number that starts with a "9" and contain a "7" or "8" as the fourth digit. An ITIN can be formatted with a space or a dash after the third and forth digits. 
  +  **US\$1PASSPORT\$1NUMBER** 

    A US passport number. Passport numbers range from six to nine alphanumeric characters. 
  +  **US\$1SOCIAL\$1SECURITY\$1NUMBER** 

    A US Social Security Number (SSN) is a nine-digit number that is issued to US citizens, permanent residents, and temporary working residents. 
+  **Canada specific** 
  +  **CA\$1HEALTH\$1NUMBER** 

    A Canadian Health Service Number is a 10-digit unique identifier, required for individuals to access healthcare benefits. 
  +  **CA\$1SOCIAL\$1INSURANCE\$1NUMBER** 

    A Canadian Social Insurance Number (SIN) is a nine-digit unique identifier, required for individuals to access government programs and benefits.

    The SIN is formatted as three groups of three digits, such as *123-456-789*. A SIN can be validated through a simple check-digit process called the [Luhn algorithm](https://www.wikipedia.org/wiki/Luhn_algorithm).
+  **UK Specific** 
  +  **UK\$1NATIONAL\$1HEALTH\$1SERVICE\$1NUMBER** 

    A UK National Health Service Number is a 10-17 digit number, such as *485 777 3456*. The current system formats the 10-digit number with spaces after the third and sixth digits. The final digit is an error-detecting checksum.
  +  **UK\$1NATIONAL\$1INSURANCE\$1NUMBER** 

    A UK National Insurance Number (NINO) provides individuals with access to National Insurance (social security) benefits. It is also used for some purposes in the UK tax system.

    The number is nine digits long and starts with two letters, followed by six numbers and one letter. A NINO can be formatted with a space or a dash after the two letters and after the second, forth, and sixth digits.
  +  **UK\$1UNIQUE\$1TAXPAYER\$1REFERENCE\$1NUMBER** 

    A UK Unique Taxpayer Reference (UTR) is a 10-digit number that identifies a taxpayer or a business. 
+  **Custom** 
  + **Regex filter** - You can use a regular expressions to define patterns for a guardrail to recognize and act upon such as serial number, booking ID etc..
*Required*: Yes  
*Type*: String  
*Allowed values*: `ADDRESS | AGE | AWS_ACCESS_KEY | AWS_SECRET_KEY | CA_HEALTH_NUMBER | CA_SOCIAL_INSURANCE_NUMBER | CREDIT_DEBIT_CARD_CVV | CREDIT_DEBIT_CARD_EXPIRY | CREDIT_DEBIT_CARD_NUMBER | DRIVER_ID | EMAIL | INTERNATIONAL_BANK_ACCOUNT_NUMBER | IP_ADDRESS | LICENSE_PLATE | MAC_ADDRESS | NAME | PASSWORD | PHONE | PIN | SWIFT_CODE | UK_NATIONAL_HEALTH_SERVICE_NUMBER | UK_NATIONAL_INSURANCE_NUMBER | UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER | URL | USERNAME | US_BANK_ACCOUNT_NUMBER | US_BANK_ROUTING_NUMBER | US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER | US_PASSPORT_NUMBER | US_SOCIAL_SECURITY_NUMBER | VEHICLE_IDENTIFICATION_NUMBER`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail RegexConfig
<a name="aws-properties-bedrock-guardrail-regexconfig"></a>

The regular expression to configure for the guardrail.

## Syntax
<a name="aws-properties-bedrock-guardrail-regexconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-regexconfig-syntax.json"></a>

```
{
  "[Action](#cfn-bedrock-guardrail-regexconfig-action)" : String,
  "[Description](#cfn-bedrock-guardrail-regexconfig-description)" : String,
  "[InputAction](#cfn-bedrock-guardrail-regexconfig-inputaction)" : String,
  "[InputEnabled](#cfn-bedrock-guardrail-regexconfig-inputenabled)" : Boolean,
  "[Name](#cfn-bedrock-guardrail-regexconfig-name)" : String,
  "[OutputAction](#cfn-bedrock-guardrail-regexconfig-outputaction)" : String,
  "[OutputEnabled](#cfn-bedrock-guardrail-regexconfig-outputenabled)" : Boolean,
  "[Pattern](#cfn-bedrock-guardrail-regexconfig-pattern)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-regexconfig-syntax.yaml"></a>

```
  [Action](#cfn-bedrock-guardrail-regexconfig-action): String
  [Description](#cfn-bedrock-guardrail-regexconfig-description): String
  [InputAction](#cfn-bedrock-guardrail-regexconfig-inputaction): String
  [InputEnabled](#cfn-bedrock-guardrail-regexconfig-inputenabled): Boolean
  [Name](#cfn-bedrock-guardrail-regexconfig-name): String
  [OutputAction](#cfn-bedrock-guardrail-regexconfig-outputaction): String
  [OutputEnabled](#cfn-bedrock-guardrail-regexconfig-outputenabled): Boolean
  [Pattern](#cfn-bedrock-guardrail-regexconfig-pattern): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-regexconfig-properties"></a>

`Action`  <a name="cfn-bedrock-guardrail-regexconfig-action"></a>
The guardrail action to configure when matching regular expression is detected.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `BLOCK | ANONYMIZE | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-guardrail-regexconfig-description"></a>
The description of the regular expression to configure for the guardrail.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputAction`  <a name="cfn-bedrock-guardrail-regexconfig-inputaction"></a>
Specifies the action to take when harmful content is detected in the input. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | ANONYMIZE | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputEnabled`  <a name="cfn-bedrock-guardrail-regexconfig-inputenabled"></a>
Specifies whether to enable guardrail evaluation on the input. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-guardrail-regexconfig-name"></a>
The name of the regular expression to configure for the guardrail.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputAction`  <a name="cfn-bedrock-guardrail-regexconfig-outputaction"></a>
Specifies the action to take when harmful content is detected in the output. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | ANONYMIZE | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputEnabled`  <a name="cfn-bedrock-guardrail-regexconfig-outputenabled"></a>
Specifies whether to enable guardrail evaluation on the output. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Pattern`  <a name="cfn-bedrock-guardrail-regexconfig-pattern"></a>
The regular expression pattern to configure for the guardrail.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail SensitiveInformationPolicyConfig
<a name="aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig"></a>

Contains details about PII entities and regular expressions to configure for the guardrail.

## Syntax
<a name="aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig-syntax.json"></a>

```
{
  "[PiiEntitiesConfig](#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-piientitiesconfig)" : [ PiiEntityConfig, ... ],
  "[RegexesConfig](#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-regexesconfig)" : [ RegexConfig, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig-syntax.yaml"></a>

```
  [PiiEntitiesConfig](#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-piientitiesconfig): 
    - PiiEntityConfig
  [RegexesConfig](#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-regexesconfig): 
    - RegexConfig
```

## Properties
<a name="aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig-properties"></a>

`PiiEntitiesConfig`  <a name="cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-piientitiesconfig"></a>
A list of PII entities to configure to the guardrail.  
*Required*: No  
*Type*: Array of [PiiEntityConfig](aws-properties-bedrock-guardrail-piientityconfig.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RegexesConfig`  <a name="cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-regexesconfig"></a>
A list of regular expressions to configure to the guardrail.  
*Required*: No  
*Type*: Array of [RegexConfig](aws-properties-bedrock-guardrail-regexconfig.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail Tag
<a name="aws-properties-bedrock-guardrail-tag"></a>

A tag associated with a resource. A tag consists of a key and value.

## Syntax
<a name="aws-properties-bedrock-guardrail-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-guardrail-tag-key)" : String,
  "[Value](#cfn-bedrock-guardrail-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-guardrail-tag-key): String
  [Value](#cfn-bedrock-guardrail-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-tag-properties"></a>

`Key`  <a name="cfn-bedrock-guardrail-tag-key"></a>
The key associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-guardrail-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail TopicConfig
<a name="aws-properties-bedrock-guardrail-topicconfig"></a>

Details about topics for the guardrail to identify and deny.

## Syntax
<a name="aws-properties-bedrock-guardrail-topicconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-topicconfig-syntax.json"></a>

```
{
  "[Definition](#cfn-bedrock-guardrail-topicconfig-definition)" : String,
  "[Examples](#cfn-bedrock-guardrail-topicconfig-examples)" : [ String, ... ],
  "[InputAction](#cfn-bedrock-guardrail-topicconfig-inputaction)" : String,
  "[InputEnabled](#cfn-bedrock-guardrail-topicconfig-inputenabled)" : Boolean,
  "[Name](#cfn-bedrock-guardrail-topicconfig-name)" : String,
  "[OutputAction](#cfn-bedrock-guardrail-topicconfig-outputaction)" : String,
  "[OutputEnabled](#cfn-bedrock-guardrail-topicconfig-outputenabled)" : Boolean,
  "[Type](#cfn-bedrock-guardrail-topicconfig-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-topicconfig-syntax.yaml"></a>

```
  [Definition](#cfn-bedrock-guardrail-topicconfig-definition): String
  [Examples](#cfn-bedrock-guardrail-topicconfig-examples): 
    - String
  [InputAction](#cfn-bedrock-guardrail-topicconfig-inputaction): String
  [InputEnabled](#cfn-bedrock-guardrail-topicconfig-inputenabled): Boolean
  [Name](#cfn-bedrock-guardrail-topicconfig-name): String
  [OutputAction](#cfn-bedrock-guardrail-topicconfig-outputaction): String
  [OutputEnabled](#cfn-bedrock-guardrail-topicconfig-outputenabled): Boolean
  [Type](#cfn-bedrock-guardrail-topicconfig-type): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-topicconfig-properties"></a>

`Definition`  <a name="cfn-bedrock-guardrail-topicconfig-definition"></a>
A definition of the topic to deny.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Examples`  <a name="cfn-bedrock-guardrail-topicconfig-examples"></a>
A list of prompts, each of which is an example of a prompt that can be categorized as belonging to the topic.  
*Required*: No  
*Type*: Array of String  
*Maximum*: `100`  
*Minimum*: `1 | 0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputAction`  <a name="cfn-bedrock-guardrail-topicconfig-inputaction"></a>
Specifies the action to take when harmful content is detected in the input. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputEnabled`  <a name="cfn-bedrock-guardrail-topicconfig-inputenabled"></a>
Specifies whether to enable guardrail evaluation on the input. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-guardrail-topicconfig-name"></a>
The name of the topic to deny.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[0-9a-zA-Z-_ !?.]+$`  
*Minimum*: `1`  
*Maximum*: `100`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputAction`  <a name="cfn-bedrock-guardrail-topicconfig-outputaction"></a>
Specifies the action to take when harmful content is detected in the output. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputEnabled`  <a name="cfn-bedrock-guardrail-topicconfig-outputenabled"></a>
Specifies whether to enable guardrail evaluation on the output. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-guardrail-topicconfig-type"></a>
Specifies to deny the topic.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `DENY`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail TopicPolicyConfig
<a name="aws-properties-bedrock-guardrail-topicpolicyconfig"></a>

Contains details about topics that the guardrail should identify and deny.

## Syntax
<a name="aws-properties-bedrock-guardrail-topicpolicyconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-topicpolicyconfig-syntax.json"></a>

```
{
  "[TopicsConfig](#cfn-bedrock-guardrail-topicpolicyconfig-topicsconfig)" : [ TopicConfig, ... ],
  "[TopicsTierConfig](#cfn-bedrock-guardrail-topicpolicyconfig-topicstierconfig)" : TopicsTierConfig
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-topicpolicyconfig-syntax.yaml"></a>

```
  [TopicsConfig](#cfn-bedrock-guardrail-topicpolicyconfig-topicsconfig): 
    - TopicConfig
  [TopicsTierConfig](#cfn-bedrock-guardrail-topicpolicyconfig-topicstierconfig): 
    TopicsTierConfig
```

## Properties
<a name="aws-properties-bedrock-guardrail-topicpolicyconfig-properties"></a>

`TopicsConfig`  <a name="cfn-bedrock-guardrail-topicpolicyconfig-topicsconfig"></a>
A list of policies related to topics that the guardrail should deny.  
*Required*: Yes  
*Type*: Array of [TopicConfig](aws-properties-bedrock-guardrail-topicconfig.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopicsTierConfig`  <a name="cfn-bedrock-guardrail-topicpolicyconfig-topicstierconfig"></a>
The tier that your guardrail uses for denied topic filters.  
*Required*: No  
*Type*: [TopicsTierConfig](aws-properties-bedrock-guardrail-topicstierconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail TopicsTierConfig
<a name="aws-properties-bedrock-guardrail-topicstierconfig"></a>

The tier that your guardrail uses for denied topic filters. Consider using a tier that balances performance, accuracy, and compatibility with your existing generative AI workflows.

## Syntax
<a name="aws-properties-bedrock-guardrail-topicstierconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-topicstierconfig-syntax.json"></a>

```
{
  "[TierName](#cfn-bedrock-guardrail-topicstierconfig-tiername)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-topicstierconfig-syntax.yaml"></a>

```
  [TierName](#cfn-bedrock-guardrail-topicstierconfig-tiername): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-topicstierconfig-properties"></a>

`TierName`  <a name="cfn-bedrock-guardrail-topicstierconfig-tiername"></a>
The tier that your guardrail uses for denied topic filters. Valid values include:  
+ `CLASSIC` tier – Provides established guardrails functionality supporting English, French, and Spanish languages.
+ `STANDARD` tier – Provides a more robust solution than the `CLASSIC` tier and has more comprehensive language support. This tier requires that your guardrail use [cross-Region inference](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails-cross-region.html).
*Required*: Yes  
*Type*: String  
*Allowed values*: `CLASSIC | STANDARD`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail WordConfig
<a name="aws-properties-bedrock-guardrail-wordconfig"></a>

A word to configure for the guardrail.

## Syntax
<a name="aws-properties-bedrock-guardrail-wordconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-wordconfig-syntax.json"></a>

```
{
  "[InputAction](#cfn-bedrock-guardrail-wordconfig-inputaction)" : String,
  "[InputEnabled](#cfn-bedrock-guardrail-wordconfig-inputenabled)" : Boolean,
  "[OutputAction](#cfn-bedrock-guardrail-wordconfig-outputaction)" : String,
  "[OutputEnabled](#cfn-bedrock-guardrail-wordconfig-outputenabled)" : Boolean,
  "[Text](#cfn-bedrock-guardrail-wordconfig-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-wordconfig-syntax.yaml"></a>

```
  [InputAction](#cfn-bedrock-guardrail-wordconfig-inputaction): String
  [InputEnabled](#cfn-bedrock-guardrail-wordconfig-inputenabled): Boolean
  [OutputAction](#cfn-bedrock-guardrail-wordconfig-outputaction): String
  [OutputEnabled](#cfn-bedrock-guardrail-wordconfig-outputenabled): Boolean
  [Text](#cfn-bedrock-guardrail-wordconfig-text): String
```

## Properties
<a name="aws-properties-bedrock-guardrail-wordconfig-properties"></a>

`InputAction`  <a name="cfn-bedrock-guardrail-wordconfig-inputaction"></a>
Specifies the action to take when harmful content is detected in the input. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputEnabled`  <a name="cfn-bedrock-guardrail-wordconfig-inputenabled"></a>
Specifies whether to enable guardrail evaluation on the intput. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputAction`  <a name="cfn-bedrock-guardrail-wordconfig-outputaction"></a>
Specifies the action to take when harmful content is detected in the output. Supported values include:  
+ `BLOCK` – Block the content and replace it with blocked messaging.
+ `NONE` – Take no action but return detection information in the trace response.
*Required*: No  
*Type*: String  
*Allowed values*: `BLOCK | NONE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`OutputEnabled`  <a name="cfn-bedrock-guardrail-wordconfig-outputenabled"></a>
Specifies whether to enable guardrail evaluation on the output. When disabled, you aren't charged for the evaluation. The evaluation doesn't appear in the response.  
*Required*: No  
*Type*: Boolean  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-guardrail-wordconfig-text"></a>
Text of the word configured for the guardrail to block.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Guardrail WordPolicyConfig
<a name="aws-properties-bedrock-guardrail-wordpolicyconfig"></a>

Contains details about the word policy to configured for the guardrail.

## Syntax
<a name="aws-properties-bedrock-guardrail-wordpolicyconfig-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-guardrail-wordpolicyconfig-syntax.json"></a>

```
{
  "[ManagedWordListsConfig](#cfn-bedrock-guardrail-wordpolicyconfig-managedwordlistsconfig)" : [ ManagedWordsConfig, ... ],
  "[WordsConfig](#cfn-bedrock-guardrail-wordpolicyconfig-wordsconfig)" : [ WordConfig, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-guardrail-wordpolicyconfig-syntax.yaml"></a>

```
  [ManagedWordListsConfig](#cfn-bedrock-guardrail-wordpolicyconfig-managedwordlistsconfig): 
    - ManagedWordsConfig
  [WordsConfig](#cfn-bedrock-guardrail-wordpolicyconfig-wordsconfig): 
    - WordConfig
```

## Properties
<a name="aws-properties-bedrock-guardrail-wordpolicyconfig-properties"></a>

`ManagedWordListsConfig`  <a name="cfn-bedrock-guardrail-wordpolicyconfig-managedwordlistsconfig"></a>
A list of managed words to configure for the guardrail.  
*Required*: No  
*Type*: Array of [ManagedWordsConfig](aws-properties-bedrock-guardrail-managedwordsconfig.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`WordsConfig`  <a name="cfn-bedrock-guardrail-wordpolicyconfig-wordsconfig"></a>
A list of words to configure for the guardrail.  
*Required*: No  
*Type*: Array of [WordConfig](aws-properties-bedrock-guardrail-wordconfig.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::GuardrailVersion
<a name="aws-resource-bedrock-guardrailversion"></a>

Creates a version of the guardrail. Use this API to create a snapshot of the guardrail when you are satisfied with a configuration, or to compare the configuration with another version.

## Syntax
<a name="aws-resource-bedrock-guardrailversion-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-guardrailversion-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::GuardrailVersion",
  "Properties" : {
      "[Description](#cfn-bedrock-guardrailversion-description)" : String,
      "[GuardrailIdentifier](#cfn-bedrock-guardrailversion-guardrailidentifier)" : String
    }
}
```

### YAML
<a name="aws-resource-bedrock-guardrailversion-syntax.yaml"></a>

```
Type: AWS::Bedrock::GuardrailVersion
Properties:
  [Description](#cfn-bedrock-guardrailversion-description): String
  [GuardrailIdentifier](#cfn-bedrock-guardrailversion-guardrailidentifier): String
```

## Properties
<a name="aws-resource-bedrock-guardrailversion-properties"></a>

`Description`  <a name="cfn-bedrock-guardrailversion-description"></a>
A description of the guardrail version.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`GuardrailIdentifier`  <a name="cfn-bedrock-guardrailversion-guardrailidentifier"></a>
The unique identifier of the guardrail. This can be an ID or the ARN.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(([a-z0-9]+)|(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:guardrail/[a-z0-9]+))$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-bedrock-guardrailversion-return-values"></a>

### Ref
<a name="aws-resource-bedrock-guardrailversion-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the guardrail ID and version, separated by a pipe (`|`) in the format (`guardrail-id|guardrail-version`).

For example, `{ "Ref": "myGuardrailVersion" }` would return the value `"3mzzryddufkp|2"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-guardrailversion-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-guardrailversion-return-values-fn--getatt-fn--getatt"></a>

`GuardrailArn`  <a name="GuardrailArn-fn::getatt"></a>
The ARN of the guardrail.

`GuardrailId`  <a name="GuardrailId-fn::getatt"></a>
The unique identifier of the guardrail.

`Version`  <a name="Version-fn::getatt"></a>
The version of the guardrail.

# AWS::Bedrock::IntelligentPromptRouter
<a name="aws-resource-bedrock-intelligentpromptrouter"></a>

Specifies an intelligent prompt router resource for Amazon Bedrock.

## Syntax
<a name="aws-resource-bedrock-intelligentpromptrouter-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-intelligentpromptrouter-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::IntelligentPromptRouter",
  "Properties" : {
      "[Description](#cfn-bedrock-intelligentpromptrouter-description)" : String,
      "[FallbackModel](#cfn-bedrock-intelligentpromptrouter-fallbackmodel)" : PromptRouterTargetModel,
      "[Models](#cfn-bedrock-intelligentpromptrouter-models)" : [ PromptRouterTargetModel, ... ],
      "[PromptRouterName](#cfn-bedrock-intelligentpromptrouter-promptroutername)" : String,
      "[RoutingCriteria](#cfn-bedrock-intelligentpromptrouter-routingcriteria)" : RoutingCriteria,
      "[Tags](#cfn-bedrock-intelligentpromptrouter-tags)" : [ Tag, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-intelligentpromptrouter-syntax.yaml"></a>

```
Type: AWS::Bedrock::IntelligentPromptRouter
Properties:
  [Description](#cfn-bedrock-intelligentpromptrouter-description): String
  [FallbackModel](#cfn-bedrock-intelligentpromptrouter-fallbackmodel): 
    PromptRouterTargetModel
  [Models](#cfn-bedrock-intelligentpromptrouter-models): 
    - PromptRouterTargetModel
  [PromptRouterName](#cfn-bedrock-intelligentpromptrouter-promptroutername): String
  [RoutingCriteria](#cfn-bedrock-intelligentpromptrouter-routingcriteria): 
    RoutingCriteria
  [Tags](#cfn-bedrock-intelligentpromptrouter-tags): 
    - Tag
```

## Properties
<a name="aws-resource-bedrock-intelligentpromptrouter-properties"></a>

`Description`  <a name="cfn-bedrock-intelligentpromptrouter-description"></a>
An optional description of the prompt router to help identify its purpose.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z:.][ _-]?)+$`  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FallbackModel`  <a name="cfn-bedrock-intelligentpromptrouter-fallbackmodel"></a>
The default model to use when the routing criteria is not met.  
*Required*: Yes  
*Type*: [PromptRouterTargetModel](aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Models`  <a name="cfn-bedrock-intelligentpromptrouter-models"></a>
A list of foundation models that the prompt router can route requests to. At least one model must be specified.  
*Required*: Yes  
*Type*: Array of [PromptRouterTargetModel](aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PromptRouterName`  <a name="cfn-bedrock-intelligentpromptrouter-promptroutername"></a>
The name of the prompt router. The name must be unique within your AWS account in the current region.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][ _-]?)+$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RoutingCriteria`  <a name="cfn-bedrock-intelligentpromptrouter-routingcriteria"></a>
Routing criteria for a prompt router.  
*Required*: Yes  
*Type*: [RoutingCriteria](aws-properties-bedrock-intelligentpromptrouter-routingcriteria.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-bedrock-intelligentpromptrouter-tags"></a>
An array of key-value pairs to apply to this resource as tags. You can use tags to categorize and manage your AWS resources.  
*Required*: No  
*Type*: Array of [Tag](aws-properties-bedrock-intelligentpromptrouter-tag.md)  
*Minimum*: `0`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-intelligentpromptrouter-return-values"></a>

### Ref
<a name="aws-resource-bedrock-intelligentpromptrouter-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the intelligent prompt router information.

### Fn::GetAtt
<a name="aws-resource-bedrock-intelligentpromptrouter-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-intelligentpromptrouter-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
Indicates the time that the prompt router was created.

`PromptRouterArn`  <a name="PromptRouterArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the prompt router.

`Status`  <a name="Status-fn::getatt"></a>
The router's status.

`Type`  <a name="Type-fn::getatt"></a>
The router's type.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
When the router was updated.

# AWS::Bedrock::IntelligentPromptRouter PromptRouterTargetModel
<a name="aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel"></a>

The target model for a prompt router.

## Syntax
<a name="aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel-syntax.json"></a>

```
{
  "[ModelArn](#cfn-bedrock-intelligentpromptrouter-promptroutertargetmodel-modelarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel-syntax.yaml"></a>

```
  [ModelArn](#cfn-bedrock-intelligentpromptrouter-promptroutertargetmodel-modelarn): String
```

## Properties
<a name="aws-properties-bedrock-intelligentpromptrouter-promptroutertargetmodel-properties"></a>

`ModelArn`  <a name="cfn-bedrock-intelligentpromptrouter-promptroutertargetmodel-modelarn"></a>
The target model's ARN.  
*Required*: Yes  
*Type*: String  
*Pattern*: `(^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}::foundation-model/[a-z0-9-]{1,63}[.]{1}([a-z0-9-]{1,63}[.]){0,2}[a-z0-9-]{1,63}([:][a-z0-9-]{1,63}){0,2})|(^arn:aws(|-us-gov|-cn|-iso|-iso-b):bedrock:(|[0-9a-z-]{0,20}):(|[0-9]{12}):(inference-profile|application-inference-profile)/[a-zA-Z0-9-:.]+)$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::IntelligentPromptRouter RoutingCriteria
<a name="aws-properties-bedrock-intelligentpromptrouter-routingcriteria"></a>

Routing criteria for a prompt router.

## Syntax
<a name="aws-properties-bedrock-intelligentpromptrouter-routingcriteria-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-intelligentpromptrouter-routingcriteria-syntax.json"></a>

```
{
  "[ResponseQualityDifference](#cfn-bedrock-intelligentpromptrouter-routingcriteria-responsequalitydifference)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-intelligentpromptrouter-routingcriteria-syntax.yaml"></a>

```
  [ResponseQualityDifference](#cfn-bedrock-intelligentpromptrouter-routingcriteria-responsequalitydifference): Number
```

## Properties
<a name="aws-properties-bedrock-intelligentpromptrouter-routingcriteria-properties"></a>

`ResponseQualityDifference`  <a name="cfn-bedrock-intelligentpromptrouter-routingcriteria-responsequalitydifference"></a>
The criteria's response quality difference.  
*Required*: Yes  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `100`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::IntelligentPromptRouter Tag
<a name="aws-properties-bedrock-intelligentpromptrouter-tag"></a>

An array of key-value pairs to apply to this resource as tags. You can use tags to categorize and manage your AWS resources.

## Syntax
<a name="aws-properties-bedrock-intelligentpromptrouter-tag-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-intelligentpromptrouter-tag-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-intelligentpromptrouter-tag-key)" : String,
  "[Value](#cfn-bedrock-intelligentpromptrouter-tag-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-intelligentpromptrouter-tag-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-intelligentpromptrouter-tag-key): String
  [Value](#cfn-bedrock-intelligentpromptrouter-tag-value): String
```

## Properties
<a name="aws-properties-bedrock-intelligentpromptrouter-tag-properties"></a>

`Key`  <a name="cfn-bedrock-intelligentpromptrouter-tag-key"></a>
The tag's key.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-intelligentpromptrouter-tag-value"></a>
The value associated with a tag.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::KnowledgeBase
<a name="aws-resource-bedrock-knowledgebase"></a>

Specifies a knowledge base as a resource in a top-level template. Minimally, you must specify the following properties:
+ Name – Specify a name for the knowledge base.
+ RoleArn – Specify the Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base. For more information, see [Create a service role for Knowledge base for Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html).
+ KnowledgeBaseConfiguration – Specify the embeddings configuration of the knowledge base. The following sub-properties are required:
  + Type – Specify the value `VECTOR`.
+ StorageConfiguration – Specify information about the vector store in which the data source is stored. The following sub-properties are required:
  + Type – Specify the vector store service that you are using.
**Note**  
Redis Enterprise Cloud vector stores are currently unsupported in CloudFormation.

For more information about using knowledge bases in Amazon Bedrock, see [Knowledge base for Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.html).

See the **Properties** section below for descriptions of both the required and optional properties.

## Syntax
<a name="aws-resource-bedrock-knowledgebase-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-knowledgebase-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::KnowledgeBase",
  "Properties" : {
      "[Description](#cfn-bedrock-knowledgebase-description)" : String,
      "[KnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration)" : KnowledgeBaseConfiguration,
      "[Name](#cfn-bedrock-knowledgebase-name)" : String,
      "[RoleArn](#cfn-bedrock-knowledgebase-rolearn)" : String,
      "[StorageConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration)" : StorageConfiguration,
      "[Tags](#cfn-bedrock-knowledgebase-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-bedrock-knowledgebase-syntax.yaml"></a>

```
Type: AWS::Bedrock::KnowledgeBase
Properties:
  [Description](#cfn-bedrock-knowledgebase-description): String
  [KnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration): 
    KnowledgeBaseConfiguration
  [Name](#cfn-bedrock-knowledgebase-name): String
  [RoleArn](#cfn-bedrock-knowledgebase-rolearn): String
  [StorageConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration): 
    StorageConfiguration
  [Tags](#cfn-bedrock-knowledgebase-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-bedrock-knowledgebase-properties"></a>

`Description`  <a name="cfn-bedrock-knowledgebase-description"></a>
 The description of the knowledge base associated with the inline agent.   
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`KnowledgeBaseConfiguration`  <a name="cfn-bedrock-knowledgebase-knowledgebaseconfiguration"></a>
Contains details about the embeddings configuration of the knowledge base.  
*Required*: Yes  
*Type*: [KnowledgeBaseConfiguration](aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-knowledgebase-name"></a>
The name of the knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`RoleArn`  <a name="cfn-bedrock-knowledgebase-rolearn"></a>
The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:iam::([0-9]{12})?:role/.+$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StorageConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration"></a>
Contains details about the storage configuration of the knowledge base.  
*Required*: No  
*Type*: [StorageConfiguration](aws-properties-bedrock-knowledgebase-storageconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-bedrock-knowledgebase-tags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-knowledgebase-return-values"></a>

### Ref
<a name="aws-resource-bedrock-knowledgebase-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the knowledge base ID.

For example, `{ "Ref": "myKnowledgeBase" }` could return the value `"KB12345678"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-knowledgebase-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-knowledgebase-return-values-fn--getatt-fn--getatt"></a>

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time the knowledge base was created.

`FailureReasons`  <a name="FailureReasons-fn::getatt"></a>
A list of reasons that the API operation on the knowledge base failed.

`KnowledgeBaseArn`  <a name="KnowledgeBaseArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the knowledge base.

`KnowledgeBaseId`  <a name="KnowledgeBaseId-fn::getatt"></a>
 The unique identifier for a knowledge base associated with the inline agent. 

`Status`  <a name="Status-fn::getatt"></a>
The status of the knowledge base.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time the knowledge base was last updated.

## Examples
<a name="aws-resource-bedrock-knowledgebase--examples"></a>

The following examples provide example templates for creating knowledge bases in different vector stores.

**Note**  
Redis Enterprise Cloud vector stores are currently unsupported in CloudFormation.

**Topics**
+ [Create a knowledge base in an Amazon OpenSearch Serverless vector collection.](#aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_OpenSearch_Serverless_vector_collection.)
+ [Create a knowledge base in an Amazon Aurora database cluster.](#aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_Aurora_database_cluster.)
+ [Create a knowledge base in a Pinecone index.](#aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_a_Pinecone_index.)

### Create a knowledge base in an Amazon OpenSearch Serverless vector collection.
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_OpenSearch_Serverless_vector_collection."></a>

The following example creates a knowledge base in a vector index within an Amazon OpenSearch Serverless vector collection.

#### YAML
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_OpenSearch_Serverless_vector_collection.--yaml"></a>

```
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template for Knowledge base with Amazon Opensearch Serverless vector database.
Parameters:
  KnowledgeBaseName:
    Type: String
    Description: The name of the knowledge base.
  KnowledgeBaseDescription:
    Type: String
    Description: The description of the knowledge base.
  DataSourceName:
    Type: String
    Description: The name of the data source.
  DataSourceDescription:
    Type: String
    Description: The description of the data source.
Resources:
  KnowledgeBaseWithAoss:
    Type: AWS::Bedrock::KnowledgeBase
    Properties:
      Name: !Ref KnowledgeBaseName
      Description: !Ref KnowledgeBaseDescription
      RoleArn: "arn:aws:iam::123456789012:role/cfn-local-test-role"
      KnowledgeBaseConfiguration:
        Type: "VECTOR"
        VectorKnowledgeBaseConfiguration:
          EmbeddingModelArn: !Sub "arn:${AWS::Partition}:bedrock:${AWS::Region}::foundation-model/amazon.titan-embed-text-v1"
      StorageConfiguration:
        Type: "OPENSEARCH_SERVERLESS"
        OpensearchServerlessConfiguration:
          CollectionArn: "arn:aws:aoss:us-west-2:123456789012:collection/abcdefghij1234567890"
          VectorIndexName: "cfn-test-index"
          FieldMapping:
            VectorField: "cfn-test-vector-field"
            TextField: "text"
            MetadataField: "metadata"
  SampleDataSource:
    Type: AWS::Bedrock::DataSource
    Properties:
      KnowledgeBaseId: !Ref KnowledgeBaseWithAoss
      Name: !Ref DataSourceName
      Description: !Ref DataSourceDescription
      DataSourceConfiguration:
        Type: "S3"
        S3Configuration:
          BucketArn: "arn:aws:s3:::kb-test-aws"
          InclusionPrefixes: ["aws-overview.pdf"]
```

#### JSON
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_OpenSearch_Serverless_vector_collection.--json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Parameters": {
        "KnowledgeBaseName": {
            "Description": "The name of the knowledge base.",
            "Type": "String"
        },
        "KnowledgeBaseDescription": {
            "Description": "The description of the knowledge base.",
            "Type": "String"
        },
        "DataSourceName": {
            "Description": "The name of the data source.",
            "Type": "String"
        },
        "DataSourceDescription": {
            "Description": "The description of the data source.",
            "Type": "String"
        }
    },
    "Resources": {
        "KnowledgeBaseWithAoss": {
            "Type": "AWS::Bedrock::KnowledgeBase",
            "Properties": {
                "Name": {
                    "Ref": "KnowledgeBaseName"
                },
                "Description": {
                    "Ref": "KnowledgeBaseDescription"
                },
                "RoleArn": "arn:aws:iam::123456789012:role/cfn-local-test-role",
                "KnowledgeBaseConfiguration": {
                    "Type": "VECTOR",
                    "VectorKnowledgeBaseConfiguration": {
                        "EmbeddingModelArn": {
                            "Fn::Sub": "arn:${AWS::Partition}:bedrock:${AWS::Region}::foundation-model/amazon.titan-embed-text-v1"
                        }
                    }
                },
                "StorageConfiguration": {
                    "Type": "OPENSEARCH_SERVERLESS",
                    "OpensearchServerlessConfiguration": {
                        "CollectionArn": "arn:aws:aoss:us-west-2:123456789012:collection/abcdefghij1234567890",
                        "VectorIndexName": "cfn-test-index",
                        "FieldMapping": {
                            "VectorField": "cfn-test-vector-field",
                            "TextField": "text",
                            "MetadataField": "metadata"
                        }
                    }
                }
            }
        },
        "SampleDataSource": {
            "Type": "AWS::Bedrock::DataSource",
            "Properties": {
                "KnowledgeBaseId": {
                    "Ref": "KnowledgeBaseWithAoss"
                },
                "Name": {
                    "Ref": "DataSourceName"
                },
                "Description": {
                    "Ref": "DataSourceDescription"
                },
                "DataSourceConfiguration": {
                    "Type": "S3",
                    "S3Configuration": {
                        "BucketArn": "arn:aws:s3:::kb-test-aws",
                        "InclusionPrefixes": ["aws-overview.pdf"]
                    }
                }
            }
        }
    }
}
```

### Create a knowledge base in an Amazon Aurora database cluster.
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_Aurora_database_cluster."></a>

The following example creates a knowledge base in a vector index within an Amazon Aurora database cluster.

#### YAML
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_Aurora_database_cluster.--yaml"></a>

```
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template for Knowledge base with RDS vector database.
Parameters:
  KnowledgeBaseName:
    Type: String
    Description: The name of the knowledge base.
  KnolwedgeBaseDescription:
    Type: String
    Description: The description of the knowledge base.
  DataSourceName:
    Type: String
    Description: The name of the data source.
  DataSourceDescription:
    Type: String
    Description: The description of the data source.
Resources:
  KnowledgeBaseWithRDS:
    Type: AWS::Bedrock::KnowledgeBase
    Properties:
      Name: !Ref KnowledgeBaseName
      Description: !Ref KnolwedgeBaseDescription
      RoleArn: "arn:aws:iam::123456789012:role/cfn-local-test-role"
      KnowledgeBaseConfiguration:
        Type: "VECTOR"
        VectorKnowledgeBaseConfiguration:
          EmbeddingModelArn: !Sub "arn:${AWS::Partition}:bedrock:${AWS::Region}::foundation-model/amazon.titan-embed-text-v1"
      StorageConfiguration:
        Type: "RDS"
        RdsConfiguration:
          ResourceArn: !Sub "arn:${AWS::Partition}:rds:${AWS::Region}:${AWS::AccountId}:cluster:ct-kb-cluster"
          CredentialsSecretArn: !Sub "arn:aws:secretsmanager:${AWS::Region}:${AWS::AccountId}:secret:rds!cluster-4f5961a1-ebd5-4887-818f-0f902e945e04-eFxmC6"
          DatabaseName: "postgres"
          TableName: "bedrock_integration.bedrock_kb"
          FieldMapping:
            VectorField: "embedding"
            TextField: "chunks"
            MetadataField: "metadata"
            PrimaryKeyField: "id"
  SampleDataSource:
    Type: AWS::Bedrock::DataSource
    Properties:
      KnowledgeBaseId: !Ref KnowledgeBaseWithRDS
      Name: !Ref DataSourceName
      Description: !Ref DataSourceDescription
      DataSourceConfiguration:
        Type: "S3"
        S3Configuration:
          BucketArn: "arn:aws:s3:::kb-test-aws"
          InclusionPrefixes: ["aws-overview.pdf"]
```

#### JSON
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_an_Amazon_Aurora_database_cluster.--json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Parameters": {
        "KnowledgeBaseName": {
            "Description": "The name of the knowledge base.",
            "Type": "String"
        },
        "KnolwedgeBaseDescription": {
            "Description": "The description of the knowledge base.",
            "Type": "String"
        },
        "DataSourceName": {
            "Description": "The name of the data source.",
            "Type": "String"
        },
        "DataSourceDescription": {
            "Description": "The description of the data source.",
            "Type": "String"
        }
    },
    "Resources": {
        "KnowledgeBaseWithRds": {
            "Type": "AWS::Bedrock::KnowledgeBase",
            "Properties": {
                "Name": {
                    "Ref": "KnowledgeBaseName"
                },
                "Description": {
                    "Ref": "KnolwedgeBaseDescription"
                },
                "RoleArn": "arn:aws:iam::123456789012:role/cfn-local-test-role",
                "KnowledgeBaseConfiguration": {
                    "Type": "VECTOR",
                    "VectorKnowledgeBaseConfiguration": {
                        "EmbeddingModelArn": {
                            "Fn::Sub": "arn:${AWS::Partition}:bedrock:${AWS::Region}::foundation-model/amazon.titan-embed-text-v1"
                        }
                    }
                },
                "StorageConfiguration": {
                    "Type": "RDS",
                    "RdsConfiguration": {
                        "ResourceArn": {
                            "Fn::Sub": "arn:${AWS::Partition}:rds:${AWS::Region}:${AWS::AccountId}:cluster:knowledgebase-cluster"
                        },
                        "CredentialsSecretArn": {
                            "Fn::Sub": "arn:${AWS::Partition}:secretsmanager:${AWS::Region}:${AWS::AccountId}:secret:rds!cluster-4f5961a1-ebd5-4887-818f-0f902e945e04-eFxmC6"
                        },
                        "DatabaseName": "postgres",
                        "TableName": "bedrock_integration.bedrock_kb",
                        "FieldMapping": {
                            "VectorField": "vectorKey",
                            "TextField": "text",
                            "MetadataField": "metadata",
                            "PrimaryKeyField": "id"
                        }
                    }
                }
            }
        },
        "SampleDataSource": {
            "Type": "AWS::Bedrock::DataSource",
            "Properties": {
                "KnowledgeBaseId": {
                    "Ref": "KnowledgeBaseWithRds"
                },
                "Name": {
                    "Ref": "DataSourceName"
                },
                "Description": {
                    "Ref": "DataSourceDescription"
                },
                "DataSourceConfiguration": {
                    "Type": "S3",
                    "S3Configuration": {
                        "BucketArn": "arn:aws:s3:::kb-test-aws",
                        "InclusionPrefixes": ["aws-overview.pdf"]
                    }
                }
            }
        }
    }
}
```

### Create a knowledge base in a Pinecone index.
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_a_Pinecone_index."></a>

The following example creates a knowledge base in a Pinecone index.

#### YAML
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_a_Pinecone_index.--yaml"></a>

```
AWSTemplateFormatVersion: "2010-09-09"
Description: A sample template for Knowledge base with Pinecone vector database.
Parameters:
  KnowledgeBaseName:
    Type: String
    Description: The name of the knowledge base.
  KnowledgeBaseDescription:
    Type: String
    Description: The description of the knowledge base.
  DataSourceName:
    Type: String
    Description: The name of the data source.
  DataSourceDescription:
    Type: String
    Description: The description of the data source.
Resources:
  KnowledgeBaseWithPinecone:
    Type: AWS::Bedrock::KnowledgeBase
    Properties:
      Name: !Ref KnowledgeBaseName
      Description: !Ref KnowledgeBaseDescription
      RoleArn: "arn:aws:iam::123456789012:role/cfn-local-test-role"
      KnowledgeBaseConfiguration:
        Type: "VECTOR"
        VectorKnowledgeBaseConfiguration:
          EmbeddingModelArn: !Sub "arn:${AWS::Partition}:bedrock:${AWS::Region}::foundation-model/amazon.titan-embed-text-v1"
      StorageConfiguration:
        Type: "PINECONE"
        PineconeConfiguration:
          ConnectionString: "https://xxxx.pinecone.io>"
          CredentialsSecretArn: "arn:aws:secretsmanager:us-west-2:123456789012:secret:pinecone-secret-abc123"
          Namespace: "kb-namespace"
          FieldMapping:
            TextField: "text"
            MetadataField: "metadata"
  SampleDataSource:
    Type: AWS::Bedrock::DataSource
    Properties:
      KnowledgeBaseId: !Ref KnowledgeBaseWithPinecone
      Name: !Ref DataSourceName
      Description: !Ref DataSourceDescription
      DataSourceConfiguration:
        Type: "S3"
        S3Configuration:
          BucketArn: "arn:aws:s3:::kb-test-aws"
          InclusionPrefixes: ["aws-overview.pdf"]
```

#### JSON
<a name="aws-resource-bedrock-knowledgebase--examples--Create_a_knowledge_base_in_a_Pinecone_index.--json"></a>

```
{
    "AWSTemplateFormatVersion": "2010-09-09",
    "Parameters": {
        "KnowledgeBaseName": {
            "Description": "The name of the knowledge base.",
            "Type": "String"
        },
        "KnowledgeBaseDescription": {
            "Description": "The description of the knowledge base.",
            "Type": "String"
        },
        "DataSourceName": {
            "Description": "The name of the data source.",
            "Type": "String"
        },
        "DataSourceDescription": {
            "Description": "The description of the data source.",
            "Type": "String"
        }
    },
    "Resources": {
        "KnowledgeBaseWithPinecone": {
            "Type": "AWS::Bedrock::KnowledgeBase",
            "Properties": {
                "Name": {
                    "Ref": "KnowledgeBaseName"
                },
                "Description": {
                    "Ref": "KnowledgeBaseDescription"
                },
                "RoleArn": "arn:aws:iam::123456789012:role/cfn-local-test-role",
                "KnowledgeBaseConfiguration": {
                    "Type": "VECTOR",
                    "VectorKnowledgeBaseConfiguration": {
                        "EmbeddingModelArn": {
                            "Fn::Sub": "arn:${AWS::Partition}:bedrock:${AWS::Region}::foundation-model/amazon.titan-embed-text-v1"
                        }
                    }
                },
                "StorageConfiguration": {
                    "Type": "PINECONE",
                    "PineconeConfiguration": {
                        "ConnectionString": "https://xxxx.pinecone.io",
                        "CredentialsSecretArn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:pinecone-secret-abc123",
                        "Namespace": "kb-namespace",
                        "FieldMapping": {
                            "TextField": "text",
                            "MetadataField": "metadata"
                        }
                    }
                }
            }
        },
        "SampleDataSource": {
            "Type": "AWS::Bedrock::DataSource",
            "Properties": {
                "KnowledgeBaseId": {
                    "Ref": "KnowledgeBaseWithPinecone"
                },
                "Name": {
                    "Ref": "DataSourceName"
                },
                "Description": {
                    "Ref": "DataSourceDescription"
                },
                "DataSourceConfiguration": {
                    "Type": "S3",
                    "S3Configuration": {
                        "BucketArn": "arn:aws:s3:::kb-test-aws",
                        "InclusionPrefixes": ["aws-overview.pdf"]
                    }
                }
            }
        }
    }
}
```

# AWS::Bedrock::KnowledgeBase AudioConfiguration
<a name="aws-properties-bedrock-knowledgebase-audioconfiguration"></a>

Configuration settings for processing audio content in multimodal knowledge bases.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-audioconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-audioconfiguration-syntax.json"></a>

```
{
  "[SegmentationConfiguration](#cfn-bedrock-knowledgebase-audioconfiguration-segmentationconfiguration)" : AudioSegmentationConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-audioconfiguration-syntax.yaml"></a>

```
  [SegmentationConfiguration](#cfn-bedrock-knowledgebase-audioconfiguration-segmentationconfiguration): 
    AudioSegmentationConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-audioconfiguration-properties"></a>

`SegmentationConfiguration`  <a name="cfn-bedrock-knowledgebase-audioconfiguration-segmentationconfiguration"></a>
Configuration for segmenting audio content during processing.  
*Required*: Yes  
*Type*: [AudioSegmentationConfiguration](aws-properties-bedrock-knowledgebase-audiosegmentationconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase AudioSegmentationConfiguration
<a name="aws-properties-bedrock-knowledgebase-audiosegmentationconfiguration"></a>

Configuration for segmenting audio content during multimodal knowledge base ingestion. Determines how audio files are divided into chunks for processing.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-audiosegmentationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-audiosegmentationconfiguration-syntax.json"></a>

```
{
  "[FixedLengthDuration](#cfn-bedrock-knowledgebase-audiosegmentationconfiguration-fixedlengthduration)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-audiosegmentationconfiguration-syntax.yaml"></a>

```
  [FixedLengthDuration](#cfn-bedrock-knowledgebase-audiosegmentationconfiguration-fixedlengthduration): Integer
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-audiosegmentationconfiguration-properties"></a>

`FixedLengthDuration`  <a name="cfn-bedrock-knowledgebase-audiosegmentationconfiguration-fixedlengthduration"></a>
The duration in seconds for each audio segment. Audio files will be divided into chunks of this length for processing.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase BedrockEmbeddingModelConfiguration
<a name="aws-properties-bedrock-knowledgebase-bedrockembeddingmodelconfiguration"></a>

The vector configuration details for the Bedrock embeddings model.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-syntax.json"></a>

```
{
  "[Audio](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-audio)" : [ AudioConfiguration, ... ],
  "[Dimensions](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-dimensions)" : Integer,
  "[EmbeddingDataType](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-embeddingdatatype)" : String,
  "[Video](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-video)" : [ VideoConfiguration, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-syntax.yaml"></a>

```
  [Audio](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-audio): 
    - AudioConfiguration
  [Dimensions](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-dimensions): Integer
  [EmbeddingDataType](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-embeddingdatatype): String
  [Video](#cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-video): 
    - VideoConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-properties"></a>

`Audio`  <a name="cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-audio"></a>
Configuration settings for processing audio content in multimodal knowledge bases.  
*Required*: No  
*Type*: Array of [AudioConfiguration](aws-properties-bedrock-knowledgebase-audioconfiguration.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Dimensions`  <a name="cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-dimensions"></a>
The dimensions details for the vector configuration used on the Bedrock embeddings model.  
*Required*: No  
*Type*: Integer  
*Minimum*: `0`  
*Maximum*: `4096`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EmbeddingDataType`  <a name="cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-embeddingdatatype"></a>
The data type for the vectors when using a model to convert text into vector embeddings. The model must support the specified data type for vector embeddings. Floating-point (float32) is the default data type, and is supported by most models for vector embeddings. See [Supported embeddings models](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-supported.html) for information on the available models and their vector data types.  
*Required*: No  
*Type*: String  
*Allowed values*: `FLOAT32 | BINARY`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Video`  <a name="cfn-bedrock-knowledgebase-bedrockembeddingmodelconfiguration-video"></a>
Configuration settings for processing video content in multimodal knowledge bases.  
*Required*: No  
*Type*: Array of [VideoConfiguration](aws-properties-bedrock-knowledgebase-videoconfiguration.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase CuratedQuery
<a name="aws-properties-bedrock-knowledgebase-curatedquery"></a>

Contains configurations for a query, each of which defines information about example queries to help the query engine generate appropriate SQL queries.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-curatedquery-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-curatedquery-syntax.json"></a>

```
{
  "[NaturalLanguage](#cfn-bedrock-knowledgebase-curatedquery-naturallanguage)" : String,
  "[Sql](#cfn-bedrock-knowledgebase-curatedquery-sql)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-curatedquery-syntax.yaml"></a>

```
  [NaturalLanguage](#cfn-bedrock-knowledgebase-curatedquery-naturallanguage): String
  [Sql](#cfn-bedrock-knowledgebase-curatedquery-sql): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-curatedquery-properties"></a>

`NaturalLanguage`  <a name="cfn-bedrock-knowledgebase-curatedquery-naturallanguage"></a>
An example natural language query.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Sql`  <a name="cfn-bedrock-knowledgebase-curatedquery-sql"></a>
The SQL equivalent of the natural language query.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::KnowledgeBase EmbeddingModelConfiguration
<a name="aws-properties-bedrock-knowledgebase-embeddingmodelconfiguration"></a>

The configuration details for the embeddings model.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-embeddingmodelconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-embeddingmodelconfiguration-syntax.json"></a>

```
{
  "[BedrockEmbeddingModelConfiguration](#cfn-bedrock-knowledgebase-embeddingmodelconfiguration-bedrockembeddingmodelconfiguration)" : BedrockEmbeddingModelConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-embeddingmodelconfiguration-syntax.yaml"></a>

```
  [BedrockEmbeddingModelConfiguration](#cfn-bedrock-knowledgebase-embeddingmodelconfiguration-bedrockembeddingmodelconfiguration): 
    BedrockEmbeddingModelConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-embeddingmodelconfiguration-properties"></a>

`BedrockEmbeddingModelConfiguration`  <a name="cfn-bedrock-knowledgebase-embeddingmodelconfiguration-bedrockembeddingmodelconfiguration"></a>
The vector configuration details on the Bedrock embeddings model.  
*Required*: No  
*Type*: [BedrockEmbeddingModelConfiguration](aws-properties-bedrock-knowledgebase-bedrockembeddingmodelconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase KendraKnowledgeBaseConfiguration
<a name="aws-properties-bedrock-knowledgebase-kendraknowledgebaseconfiguration"></a>

Settings for an Amazon Kendra knowledge base.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-kendraknowledgebaseconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-kendraknowledgebaseconfiguration-syntax.json"></a>

```
{
  "[KendraIndexArn](#cfn-bedrock-knowledgebase-kendraknowledgebaseconfiguration-kendraindexarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-kendraknowledgebaseconfiguration-syntax.yaml"></a>

```
  [KendraIndexArn](#cfn-bedrock-knowledgebase-kendraknowledgebaseconfiguration-kendraindexarn): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-kendraknowledgebaseconfiguration-properties"></a>

`KendraIndexArn`  <a name="cfn-bedrock-knowledgebase-kendraknowledgebaseconfiguration-kendraindexarn"></a>
The ARN of the Amazon Kendra index.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):kendra:[a-z0-9-]{1,20}:([0-9]{12}|):index/([a-zA-Z0-9][a-zA-Z0-9-]{35}|[a-zA-Z0-9][a-zA-Z0-9-]{35}-[a-zA-Z0-9][a-zA-Z0-9-]{35})$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase KnowledgeBaseConfiguration
<a name="aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration"></a>

Configurations to apply to a knowledge base attached to the agent during query. For more information, see [Knowledge base retrieval configurations](https://docs.aws.amazon.com/bedrock/latest/userguide/agents-session-state.html#session-state-kb).

## Syntax
<a name="aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration-syntax.json"></a>

```
{
  "[KendraKnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-kendraknowledgebaseconfiguration)" : KendraKnowledgeBaseConfiguration,
  "[SqlKnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-sqlknowledgebaseconfiguration)" : SqlKnowledgeBaseConfiguration,
  "[Type](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-type)" : String,
  "[VectorKnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-vectorknowledgebaseconfiguration)" : VectorKnowledgeBaseConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration-syntax.yaml"></a>

```
  [KendraKnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-kendraknowledgebaseconfiguration): 
    KendraKnowledgeBaseConfiguration
  [SqlKnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-sqlknowledgebaseconfiguration): 
    SqlKnowledgeBaseConfiguration
  [Type](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-type): String
  [VectorKnowledgeBaseConfiguration](#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-vectorknowledgebaseconfiguration): 
    VectorKnowledgeBaseConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration-properties"></a>

`KendraKnowledgeBaseConfiguration`  <a name="cfn-bedrock-knowledgebase-knowledgebaseconfiguration-kendraknowledgebaseconfiguration"></a>
Settings for an Amazon Kendra knowledge base.  
*Required*: No  
*Type*: [KendraKnowledgeBaseConfiguration](aws-properties-bedrock-knowledgebase-kendraknowledgebaseconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SqlKnowledgeBaseConfiguration`  <a name="cfn-bedrock-knowledgebase-knowledgebaseconfiguration-sqlknowledgebaseconfiguration"></a>
Specifies configurations for a knowledge base connected to an SQL database.  
*Required*: No  
*Type*: [SqlKnowledgeBaseConfiguration](aws-properties-bedrock-knowledgebase-sqlknowledgebaseconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-knowledgebase-knowledgebaseconfiguration-type"></a>
The type of data that the data source is converted into for the knowledge base.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `VECTOR | KENDRA | SQL`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorKnowledgeBaseConfiguration`  <a name="cfn-bedrock-knowledgebase-knowledgebaseconfiguration-vectorknowledgebaseconfiguration"></a>
Contains details about the model that's used to convert the data source into vector embeddings.  
*Required*: No  
*Type*: [VectorKnowledgeBaseConfiguration](aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase MongoDbAtlasConfiguration
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasconfiguration-syntax.json"></a>

```
{
  "[CollectionName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-collectionname)" : String,
  "[CredentialsSecretArn](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-credentialssecretarn)" : String,
  "[DatabaseName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-databasename)" : String,
  "[Endpoint](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-endpoint)" : String,
  "[EndpointServiceName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-endpointservicename)" : String,
  "[FieldMapping](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-fieldmapping)" : MongoDbAtlasFieldMapping,
  "[TextIndexName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-textindexname)" : String,
  "[VectorIndexName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-vectorindexname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasconfiguration-syntax.yaml"></a>

```
  [CollectionName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-collectionname): String
  [CredentialsSecretArn](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-credentialssecretarn): String
  [DatabaseName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-databasename): String
  [Endpoint](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-endpoint): String
  [EndpointServiceName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-endpointservicename): String
  [FieldMapping](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-fieldmapping): 
    MongoDbAtlasFieldMapping
  [TextIndexName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-textindexname): String
  [VectorIndexName](#cfn-bedrock-knowledgebase-mongodbatlasconfiguration-vectorindexname): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasconfiguration-properties"></a>

`CollectionName`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-collectionname"></a>
The collection name of the knowledge base in MongoDB Atlas.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`CredentialsSecretArn`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-credentialssecretarn"></a>
The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that contains user credentials for your MongoDB Atlas cluster.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DatabaseName`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-databasename"></a>
The database name in your MongoDB Atlas cluster for your knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Endpoint`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-endpoint"></a>
The endpoint URL of your MongoDB Atlas cluster for your knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+\.mongodb\.net$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EndpointServiceName`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-endpointservicename"></a>
The name of the VPC endpoint service in your account that is connected to your MongoDB Atlas cluster.  
*Required*: No  
*Type*: String  
*Pattern*: `^(?:arn:aws(?:-us-gov|-cn|-iso|-iso-[a-z])*:.+:.*:\d+:.+/.+$|[a-zA-Z0-9*]+[a-zA-Z0-9._-]*)$`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FieldMapping`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-fieldmapping"></a>
Contains the names of the fields to which to map information about the vector store.  
*Required*: Yes  
*Type*: [MongoDbAtlasFieldMapping](aws-properties-bedrock-knowledgebase-mongodbatlasfieldmapping.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextIndexName`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-textindexname"></a>
The name of the text search index in the MongoDB collection. This is required for using the hybrid search feature.  
*Required*: No  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorIndexName`  <a name="cfn-bedrock-knowledgebase-mongodbatlasconfiguration-vectorindexname"></a>
The name of the MongoDB Atlas vector search index.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase MongoDbAtlasFieldMapping
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasfieldmapping"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasfieldmapping-syntax.json"></a>

```
{
  "[MetadataField](#cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-metadatafield)" : String,
  "[TextField](#cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-textfield)" : String,
  "[VectorField](#cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-vectorfield)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasfieldmapping-syntax.yaml"></a>

```
  [MetadataField](#cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-metadatafield): String
  [TextField](#cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-textfield): String
  [VectorField](#cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-vectorfield): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-mongodbatlasfieldmapping-properties"></a>

`MetadataField`  <a name="cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-metadatafield"></a>
The name of the field in which Amazon Bedrock stores metadata about the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextField`  <a name="cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-textfield"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorField`  <a name="cfn-bedrock-knowledgebase-mongodbatlasfieldmapping-vectorfield"></a>
The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase NeptuneAnalyticsConfiguration
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsconfiguration"></a>

Contains details about the storage configuration of the knowledge base in Amazon Neptune Analytics. For more information, see [Create a vector index in Amazon Neptune Analytics](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-neptune.html).

## Syntax
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsconfiguration-syntax.json"></a>

```
{
  "[FieldMapping](#cfn-bedrock-knowledgebase-neptuneanalyticsconfiguration-fieldmapping)" : NeptuneAnalyticsFieldMapping,
  "[GraphArn](#cfn-bedrock-knowledgebase-neptuneanalyticsconfiguration-grapharn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsconfiguration-syntax.yaml"></a>

```
  [FieldMapping](#cfn-bedrock-knowledgebase-neptuneanalyticsconfiguration-fieldmapping): 
    NeptuneAnalyticsFieldMapping
  [GraphArn](#cfn-bedrock-knowledgebase-neptuneanalyticsconfiguration-grapharn): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsconfiguration-properties"></a>

`FieldMapping`  <a name="cfn-bedrock-knowledgebase-neptuneanalyticsconfiguration-fieldmapping"></a>
Contains the names of the fields to which to map information about the vector store.  
*Required*: Yes  
*Type*: [NeptuneAnalyticsFieldMapping](aws-properties-bedrock-knowledgebase-neptuneanalyticsfieldmapping.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`GraphArn`  <a name="cfn-bedrock-knowledgebase-neptuneanalyticsconfiguration-grapharn"></a>
The Amazon Resource Name (ARN) of the Neptune Analytics vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):neptune-graph:[a-zA-Z0-9-]*:[0-9]{12}:graph\/g-[a-zA-Z0-9]{10}$`  
*Minimum*: `1`  
*Maximum*: `255`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase NeptuneAnalyticsFieldMapping
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsfieldmapping"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsfieldmapping-syntax.json"></a>

```
{
  "[MetadataField](#cfn-bedrock-knowledgebase-neptuneanalyticsfieldmapping-metadatafield)" : String,
  "[TextField](#cfn-bedrock-knowledgebase-neptuneanalyticsfieldmapping-textfield)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsfieldmapping-syntax.yaml"></a>

```
  [MetadataField](#cfn-bedrock-knowledgebase-neptuneanalyticsfieldmapping-metadatafield): String
  [TextField](#cfn-bedrock-knowledgebase-neptuneanalyticsfieldmapping-textfield): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-neptuneanalyticsfieldmapping-properties"></a>

`MetadataField`  <a name="cfn-bedrock-knowledgebase-neptuneanalyticsfieldmapping-metadatafield"></a>
The name of the field in which Amazon Bedrock stores metadata about the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextField`  <a name="cfn-bedrock-knowledgebase-neptuneanalyticsfieldmapping-textfield"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase OpenSearchManagedClusterConfiguration
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterconfiguration"></a>

Contains details about the Managed Cluster configuration of the knowledge base in Amazon OpenSearch Service. For more information, see [Create a vector index in OpenSearch Managed Cluster](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-osm.html).

## Syntax
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-syntax.json"></a>

```
{
  "[DomainArn](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-domainarn)" : String,
  "[DomainEndpoint](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-domainendpoint)" : String,
  "[FieldMapping](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-fieldmapping)" : OpenSearchManagedClusterFieldMapping,
  "[VectorIndexName](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-vectorindexname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-syntax.yaml"></a>

```
  [DomainArn](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-domainarn): String
  [DomainEndpoint](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-domainendpoint): String
  [FieldMapping](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-fieldmapping): 
    OpenSearchManagedClusterFieldMapping
  [VectorIndexName](#cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-vectorindexname): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-properties"></a>

`DomainArn`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-domainarn"></a>
The Amazon Resource Name (ARN) of the OpenSearch domain.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-cn|-us-gov|-eusc|-iso(-[b-f])?)?:es:([a-z]{2,}-){2,}\d:\d{12}:domain/[a-z][a-z0-9-]{3,28}$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DomainEndpoint`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-domainendpoint"></a>
The endpoint URL the OpenSearch domain.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^https://.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FieldMapping`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-fieldmapping"></a>
Contains the names of the fields to which to map information about the vector store.  
*Required*: Yes  
*Type*: [OpenSearchManagedClusterFieldMapping](aws-properties-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorIndexName`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterconfiguration-vectorindexname"></a>
The name of the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(?![\-_+.])[a-z0-9][a-z0-9\-_\.]*$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase OpenSearchManagedClusterFieldMapping
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-syntax.json"></a>

```
{
  "[MetadataField](#cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-metadatafield)" : String,
  "[TextField](#cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-textfield)" : String,
  "[VectorField](#cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-vectorfield)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-syntax.yaml"></a>

```
  [MetadataField](#cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-metadatafield): String
  [TextField](#cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-textfield): String
  [VectorField](#cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-vectorfield): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-properties"></a>

`MetadataField`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-metadatafield"></a>
The name of the field in which Amazon Bedrock stores metadata about the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextField`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-textfield"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorField`  <a name="cfn-bedrock-knowledgebase-opensearchmanagedclusterfieldmapping-vectorfield"></a>
The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase OpenSearchServerlessConfiguration
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration"></a>

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](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-oss.html).

## Syntax
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration-syntax.json"></a>

```
{
  "[CollectionArn](#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-collectionarn)" : String,
  "[FieldMapping](#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-fieldmapping)" : OpenSearchServerlessFieldMapping,
  "[VectorIndexName](#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-vectorindexname)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration-syntax.yaml"></a>

```
  [CollectionArn](#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-collectionarn): String
  [FieldMapping](#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-fieldmapping): 
    OpenSearchServerlessFieldMapping
  [VectorIndexName](#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-vectorindexname): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration-properties"></a>

`CollectionArn`  <a name="cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-collectionarn"></a>
The Amazon Resource Name (ARN) of the OpenSearch Service vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov|-iso):aoss:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:collection/[a-z0-9-]{3,32}$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FieldMapping`  <a name="cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-fieldmapping"></a>
Contains the names of the fields to which to map information about the vector store.  
*Required*: Yes  
*Type*: [OpenSearchServerlessFieldMapping](aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorIndexName`  <a name="cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-vectorindexname"></a>
The name of the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase OpenSearchServerlessFieldMapping
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping-syntax.json"></a>

```
{
  "[MetadataField](#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-metadatafield)" : String,
  "[TextField](#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-textfield)" : String,
  "[VectorField](#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-vectorfield)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping-syntax.yaml"></a>

```
  [MetadataField](#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-metadatafield): String
  [TextField](#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-textfield): String
  [VectorField](#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-vectorfield): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping-properties"></a>

`MetadataField`  <a name="cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-metadatafield"></a>
The name of the field in which Amazon Bedrock stores metadata about the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextField`  <a name="cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-textfield"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorField`  <a name="cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-vectorfield"></a>
The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase PineconeConfiguration
<a name="aws-properties-bedrock-knowledgebase-pineconeconfiguration"></a>

Contains details about the storage configuration of the knowledge base in Pinecone. For more information, see [Create a vector index in Pinecone](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-pinecone.html).

## Syntax
<a name="aws-properties-bedrock-knowledgebase-pineconeconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-pineconeconfiguration-syntax.json"></a>

```
{
  "[ConnectionString](#cfn-bedrock-knowledgebase-pineconeconfiguration-connectionstring)" : String,
  "[CredentialsSecretArn](#cfn-bedrock-knowledgebase-pineconeconfiguration-credentialssecretarn)" : String,
  "[FieldMapping](#cfn-bedrock-knowledgebase-pineconeconfiguration-fieldmapping)" : PineconeFieldMapping,
  "[Namespace](#cfn-bedrock-knowledgebase-pineconeconfiguration-namespace)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-pineconeconfiguration-syntax.yaml"></a>

```
  [ConnectionString](#cfn-bedrock-knowledgebase-pineconeconfiguration-connectionstring): 
    String
  [CredentialsSecretArn](#cfn-bedrock-knowledgebase-pineconeconfiguration-credentialssecretarn): String
  [FieldMapping](#cfn-bedrock-knowledgebase-pineconeconfiguration-fieldmapping): 
    PineconeFieldMapping
  [Namespace](#cfn-bedrock-knowledgebase-pineconeconfiguration-namespace): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-pineconeconfiguration-properties"></a>

`ConnectionString`  <a name="cfn-bedrock-knowledgebase-pineconeconfiguration-connectionstring"></a>
The endpoint URL for your index management page.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`CredentialsSecretArn`  <a name="cfn-bedrock-knowledgebase-pineconeconfiguration-credentialssecretarn"></a>
The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that is linked to your Pinecone API key.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FieldMapping`  <a name="cfn-bedrock-knowledgebase-pineconeconfiguration-fieldmapping"></a>
Contains the names of the fields to which to map information about the vector store.  
*Required*: Yes  
*Type*: [PineconeFieldMapping](aws-properties-bedrock-knowledgebase-pineconefieldmapping.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Namespace`  <a name="cfn-bedrock-knowledgebase-pineconeconfiguration-namespace"></a>
The namespace to be used to write new data to your database.  
*Required*: No  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase PineconeFieldMapping
<a name="aws-properties-bedrock-knowledgebase-pineconefieldmapping"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-pineconefieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-pineconefieldmapping-syntax.json"></a>

```
{
  "[MetadataField](#cfn-bedrock-knowledgebase-pineconefieldmapping-metadatafield)" : String,
  "[TextField](#cfn-bedrock-knowledgebase-pineconefieldmapping-textfield)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-pineconefieldmapping-syntax.yaml"></a>

```
  [MetadataField](#cfn-bedrock-knowledgebase-pineconefieldmapping-metadatafield): String
  [TextField](#cfn-bedrock-knowledgebase-pineconefieldmapping-textfield): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-pineconefieldmapping-properties"></a>

`MetadataField`  <a name="cfn-bedrock-knowledgebase-pineconefieldmapping-metadatafield"></a>
The name of the field in which Amazon Bedrock stores metadata about the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextField`  <a name="cfn-bedrock-knowledgebase-pineconefieldmapping-textfield"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*$`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase QueryGenerationColumn
<a name="aws-properties-bedrock-knowledgebase-querygenerationcolumn"></a>

Contains information about a column in the current table for the query engine to consider.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-querygenerationcolumn-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-querygenerationcolumn-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-knowledgebase-querygenerationcolumn-description)" : String,
  "[Inclusion](#cfn-bedrock-knowledgebase-querygenerationcolumn-inclusion)" : String,
  "[Name](#cfn-bedrock-knowledgebase-querygenerationcolumn-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-querygenerationcolumn-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-knowledgebase-querygenerationcolumn-description): String
  [Inclusion](#cfn-bedrock-knowledgebase-querygenerationcolumn-inclusion): String
  [Name](#cfn-bedrock-knowledgebase-querygenerationcolumn-name): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-querygenerationcolumn-properties"></a>

`Description`  <a name="cfn-bedrock-knowledgebase-querygenerationcolumn-description"></a>
A description of the column that helps the query engine understand the contents of the column.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Inclusion`  <a name="cfn-bedrock-knowledgebase-querygenerationcolumn-inclusion"></a>
Specifies whether to include or exclude the column during query generation. If you specify `EXCLUDE`, the column will be ignored. If you specify `INCLUDE`, all other columns in the table will be ignored.  
*Required*: No  
*Type*: String  
*Allowed values*: `INCLUDE | EXCLUDE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-knowledgebase-querygenerationcolumn-name"></a>
The name of the column for which the other fields in this object apply.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `127`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::KnowledgeBase QueryGenerationConfiguration
<a name="aws-properties-bedrock-knowledgebase-querygenerationconfiguration"></a>

Contains configurations for query generation. For more information, see [Build a knowledge base by connecting to a structured data source](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-build-structured.html) in the Amazon Bedrock User Guide..

## Syntax
<a name="aws-properties-bedrock-knowledgebase-querygenerationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-querygenerationconfiguration-syntax.json"></a>

```
{
  "[ExecutionTimeoutSeconds](#cfn-bedrock-knowledgebase-querygenerationconfiguration-executiontimeoutseconds)" : Integer,
  "[GenerationContext](#cfn-bedrock-knowledgebase-querygenerationconfiguration-generationcontext)" : QueryGenerationContext
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-querygenerationconfiguration-syntax.yaml"></a>

```
  [ExecutionTimeoutSeconds](#cfn-bedrock-knowledgebase-querygenerationconfiguration-executiontimeoutseconds): Integer
  [GenerationContext](#cfn-bedrock-knowledgebase-querygenerationconfiguration-generationcontext): 
    QueryGenerationContext
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-querygenerationconfiguration-properties"></a>

`ExecutionTimeoutSeconds`  <a name="cfn-bedrock-knowledgebase-querygenerationconfiguration-executiontimeoutseconds"></a>
The time after which query generation will time out.  
*Required*: No  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenerationContext`  <a name="cfn-bedrock-knowledgebase-querygenerationconfiguration-generationcontext"></a>
Specifies configurations for context to use during query generation.  
*Required*: No  
*Type*: [QueryGenerationContext](aws-properties-bedrock-knowledgebase-querygenerationcontext.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::KnowledgeBase QueryGenerationContext
<a name="aws-properties-bedrock-knowledgebase-querygenerationcontext"></a>

>Contains configurations for context to use during query generation.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-querygenerationcontext-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-querygenerationcontext-syntax.json"></a>

```
{
  "[CuratedQueries](#cfn-bedrock-knowledgebase-querygenerationcontext-curatedqueries)" : [ CuratedQuery, ... ],
  "[Tables](#cfn-bedrock-knowledgebase-querygenerationcontext-tables)" : [ QueryGenerationTable, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-querygenerationcontext-syntax.yaml"></a>

```
  [CuratedQueries](#cfn-bedrock-knowledgebase-querygenerationcontext-curatedqueries): 
    - CuratedQuery
  [Tables](#cfn-bedrock-knowledgebase-querygenerationcontext-tables): 
    - QueryGenerationTable
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-querygenerationcontext-properties"></a>

`CuratedQueries`  <a name="cfn-bedrock-knowledgebase-querygenerationcontext-curatedqueries"></a>
An array of objects, each of which defines information about example queries to help the query engine generate appropriate SQL queries.  
*Required*: No  
*Type*: Array of [CuratedQuery](aws-properties-bedrock-knowledgebase-curatedquery.md)  
*Maximum*: `10`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tables`  <a name="cfn-bedrock-knowledgebase-querygenerationcontext-tables"></a>
An array of objects, each of which defines information about a table in the database.  
*Required*: No  
*Type*: Array of [QueryGenerationTable](aws-properties-bedrock-knowledgebase-querygenerationtable.md)  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::KnowledgeBase QueryGenerationTable
<a name="aws-properties-bedrock-knowledgebase-querygenerationtable"></a>

Contains information about a table for the query engine to consider.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-querygenerationtable-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-querygenerationtable-syntax.json"></a>

```
{
  "[Columns](#cfn-bedrock-knowledgebase-querygenerationtable-columns)" : [ QueryGenerationColumn, ... ],
  "[Description](#cfn-bedrock-knowledgebase-querygenerationtable-description)" : String,
  "[Inclusion](#cfn-bedrock-knowledgebase-querygenerationtable-inclusion)" : String,
  "[Name](#cfn-bedrock-knowledgebase-querygenerationtable-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-querygenerationtable-syntax.yaml"></a>

```
  [Columns](#cfn-bedrock-knowledgebase-querygenerationtable-columns): 
    - QueryGenerationColumn
  [Description](#cfn-bedrock-knowledgebase-querygenerationtable-description): String
  [Inclusion](#cfn-bedrock-knowledgebase-querygenerationtable-inclusion): String
  [Name](#cfn-bedrock-knowledgebase-querygenerationtable-name): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-querygenerationtable-properties"></a>

`Columns`  <a name="cfn-bedrock-knowledgebase-querygenerationtable-columns"></a>
An array of objects, each of which defines information about a column in the table.  
*Required*: No  
*Type*: Array of [QueryGenerationColumn](aws-properties-bedrock-knowledgebase-querygenerationcolumn.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-knowledgebase-querygenerationtable-description"></a>
A description of the table that helps the query engine understand the contents of the table.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Inclusion`  <a name="cfn-bedrock-knowledgebase-querygenerationtable-inclusion"></a>
Specifies whether to include or exclude the table during query generation. If you specify `EXCLUDE`, the table will be ignored. If you specify `INCLUDE`, all other tables will be ignored.  
*Required*: No  
*Type*: String  
*Allowed values*: `INCLUDE | EXCLUDE`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-knowledgebase-querygenerationtable-name"></a>
The name of the table for which the other fields in this object apply.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^.*\..*\..*$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::KnowledgeBase RdsConfiguration
<a name="aws-properties-bedrock-knowledgebase-rdsconfiguration"></a>

Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see [Create a vector index in Amazon RDS](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-rds.html).

## Syntax
<a name="aws-properties-bedrock-knowledgebase-rdsconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-rdsconfiguration-syntax.json"></a>

```
{
  "[CredentialsSecretArn](#cfn-bedrock-knowledgebase-rdsconfiguration-credentialssecretarn)" : String,
  "[DatabaseName](#cfn-bedrock-knowledgebase-rdsconfiguration-databasename)" : String,
  "[FieldMapping](#cfn-bedrock-knowledgebase-rdsconfiguration-fieldmapping)" : RdsFieldMapping,
  "[ResourceArn](#cfn-bedrock-knowledgebase-rdsconfiguration-resourcearn)" : String,
  "[TableName](#cfn-bedrock-knowledgebase-rdsconfiguration-tablename)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-rdsconfiguration-syntax.yaml"></a>

```
  [CredentialsSecretArn](#cfn-bedrock-knowledgebase-rdsconfiguration-credentialssecretarn): String
  [DatabaseName](#cfn-bedrock-knowledgebase-rdsconfiguration-databasename): String
  [FieldMapping](#cfn-bedrock-knowledgebase-rdsconfiguration-fieldmapping): 
    RdsFieldMapping
  [ResourceArn](#cfn-bedrock-knowledgebase-rdsconfiguration-resourcearn): String
  [TableName](#cfn-bedrock-knowledgebase-rdsconfiguration-tablename): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-rdsconfiguration-properties"></a>

`CredentialsSecretArn`  <a name="cfn-bedrock-knowledgebase-rdsconfiguration-credentialssecretarn"></a>
The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that is linked to your Amazon RDS database.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`DatabaseName`  <a name="cfn-bedrock-knowledgebase-rdsconfiguration-databasename"></a>
The name of your Amazon RDS database.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`FieldMapping`  <a name="cfn-bedrock-knowledgebase-rdsconfiguration-fieldmapping"></a>
Contains the names of the fields to which to map information about the vector store.  
*Required*: Yes  
*Type*: [RdsFieldMapping](aws-properties-bedrock-knowledgebase-rdsfieldmapping.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ResourceArn`  <a name="cfn-bedrock-knowledgebase-rdsconfiguration-resourcearn"></a>
The Amazon Resource Name (ARN) of the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):rds:[a-zA-Z0-9-]*:[0-9]{12}:cluster:[a-zA-Z0-9-]{1,63}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TableName`  <a name="cfn-bedrock-knowledgebase-rdsconfiguration-tablename"></a>
The name of the table in the database.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\.\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RdsFieldMapping
<a name="aws-properties-bedrock-knowledgebase-rdsfieldmapping"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-rdsfieldmapping-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-rdsfieldmapping-syntax.json"></a>

```
{
  "[CustomMetadataField](#cfn-bedrock-knowledgebase-rdsfieldmapping-custommetadatafield)" : String,
  "[MetadataField](#cfn-bedrock-knowledgebase-rdsfieldmapping-metadatafield)" : String,
  "[PrimaryKeyField](#cfn-bedrock-knowledgebase-rdsfieldmapping-primarykeyfield)" : String,
  "[TextField](#cfn-bedrock-knowledgebase-rdsfieldmapping-textfield)" : String,
  "[VectorField](#cfn-bedrock-knowledgebase-rdsfieldmapping-vectorfield)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-rdsfieldmapping-syntax.yaml"></a>

```
  [CustomMetadataField](#cfn-bedrock-knowledgebase-rdsfieldmapping-custommetadatafield): String
  [MetadataField](#cfn-bedrock-knowledgebase-rdsfieldmapping-metadatafield): String
  [PrimaryKeyField](#cfn-bedrock-knowledgebase-rdsfieldmapping-primarykeyfield): String
  [TextField](#cfn-bedrock-knowledgebase-rdsfieldmapping-textfield): String
  [VectorField](#cfn-bedrock-knowledgebase-rdsfieldmapping-vectorfield): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-rdsfieldmapping-properties"></a>

`CustomMetadataField`  <a name="cfn-bedrock-knowledgebase-rdsfieldmapping-custommetadatafield"></a>
Provide a name for the universal metadata field where Amazon Bedrock will store any custom metadata from your data source.  
*Required*: No  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`MetadataField`  <a name="cfn-bedrock-knowledgebase-rdsfieldmapping-metadatafield"></a>
The name of the field in which Amazon Bedrock stores metadata about the vector store.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PrimaryKeyField`  <a name="cfn-bedrock-knowledgebase-rdsfieldmapping-primarykeyfield"></a>
The name of the field in which Amazon Bedrock stores the ID for each entry.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`TextField`  <a name="cfn-bedrock-knowledgebase-rdsfieldmapping-textfield"></a>
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.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorField`  <a name="cfn-bedrock-knowledgebase-rdsfieldmapping-vectorfield"></a>
The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9_\-]+$`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftconfiguration"></a>

Contains configurations for an Amazon Redshift database. For more information, see [Build a knowledge base by connecting to a structured data source](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-build-structured.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftconfiguration-syntax.json"></a>

```
{
  "[QueryEngineConfiguration](#cfn-bedrock-knowledgebase-redshiftconfiguration-queryengineconfiguration)" : RedshiftQueryEngineConfiguration,
  "[QueryGenerationConfiguration](#cfn-bedrock-knowledgebase-redshiftconfiguration-querygenerationconfiguration)" : QueryGenerationConfiguration,
  "[StorageConfigurations](#cfn-bedrock-knowledgebase-redshiftconfiguration-storageconfigurations)" : [ RedshiftQueryEngineStorageConfiguration, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftconfiguration-syntax.yaml"></a>

```
  [QueryEngineConfiguration](#cfn-bedrock-knowledgebase-redshiftconfiguration-queryengineconfiguration): 
    RedshiftQueryEngineConfiguration
  [QueryGenerationConfiguration](#cfn-bedrock-knowledgebase-redshiftconfiguration-querygenerationconfiguration): 
    QueryGenerationConfiguration
  [StorageConfigurations](#cfn-bedrock-knowledgebase-redshiftconfiguration-storageconfigurations): 
    - RedshiftQueryEngineStorageConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftconfiguration-properties"></a>

`QueryEngineConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftconfiguration-queryengineconfiguration"></a>
Specifies configurations for an Amazon Redshift query engine.  
*Required*: Yes  
*Type*: [RedshiftQueryEngineConfiguration](aws-properties-bedrock-knowledgebase-redshiftqueryengineconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`QueryGenerationConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftconfiguration-querygenerationconfiguration"></a>
Specifies configurations for generating queries.  
*Required*: No  
*Type*: [QueryGenerationConfiguration](aws-properties-bedrock-knowledgebase-querygenerationconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StorageConfigurations`  <a name="cfn-bedrock-knowledgebase-redshiftconfiguration-storageconfigurations"></a>
Specifies configurations for Amazon Redshift database storage.  
*Required*: Yes  
*Type*: Array of [RedshiftQueryEngineStorageConfiguration](aws-properties-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftProvisionedAuthConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedauthconfiguration"></a>

Contains configurations for authentication to an Amazon Redshift provisioned data warehouse. Specify the type of authentication to use in the `type` field and include the corresponding field. If you specify IAM authentication, you don't need to include another field.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-syntax.json"></a>

```
{
  "[DatabaseUser](#cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-databaseuser)" : String,
  "[Type](#cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-type)" : String,
  "[UsernamePasswordSecretArn](#cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-usernamepasswordsecretarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-syntax.yaml"></a>

```
  [DatabaseUser](#cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-databaseuser): String
  [Type](#cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-type): String
  [UsernamePasswordSecretArn](#cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-usernamepasswordsecretarn): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-properties"></a>

`DatabaseUser`  <a name="cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-databaseuser"></a>
The database username for authentication to an Amazon Redshift provisioned data warehouse.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Type`  <a name="cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-type"></a>
The type of authentication to use.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `IAM | USERNAME_PASSWORD | USERNAME`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`UsernamePasswordSecretArn`  <a name="cfn-bedrock-knowledgebase-redshiftprovisionedauthconfiguration-usernamepasswordsecretarn"></a>
The ARN of an Secrets Manager secret for authentication.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftProvisionedConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedconfiguration"></a>

Contains configurations for a provisioned Amazon Redshift query engine.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedconfiguration-syntax.json"></a>

```
{
  "[AuthConfiguration](#cfn-bedrock-knowledgebase-redshiftprovisionedconfiguration-authconfiguration)" : RedshiftProvisionedAuthConfiguration,
  "[ClusterIdentifier](#cfn-bedrock-knowledgebase-redshiftprovisionedconfiguration-clusteridentifier)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedconfiguration-syntax.yaml"></a>

```
  [AuthConfiguration](#cfn-bedrock-knowledgebase-redshiftprovisionedconfiguration-authconfiguration): 
    RedshiftProvisionedAuthConfiguration
  [ClusterIdentifier](#cfn-bedrock-knowledgebase-redshiftprovisionedconfiguration-clusteridentifier): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftprovisionedconfiguration-properties"></a>

`AuthConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftprovisionedconfiguration-authconfiguration"></a>
Specifies configurations for authentication to Amazon Redshift.  
*Required*: Yes  
*Type*: [RedshiftProvisionedAuthConfiguration](aws-properties-bedrock-knowledgebase-redshiftprovisionedauthconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ClusterIdentifier`  <a name="cfn-bedrock-knowledgebase-redshiftprovisionedconfiguration-clusteridentifier"></a>
The ID of the Amazon Redshift cluster.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftQueryEngineAwsDataCatalogStorageConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration"></a>

Contains configurations for storage in AWS Glue Data Catalog.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-syntax.json"></a>

```
{
  "[TableNames](#cfn-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-tablenames)" : [ String, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-syntax.yaml"></a>

```
  [TableNames](#cfn-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-tablenames): 
    - String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-properties"></a>

`TableNames`  <a name="cfn-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration-tablenames"></a>
A list of names of the tables to use.  
*Required*: Yes  
*Type*: Array of String  
*Minimum*: `1`  
*Maximum*: `1000`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftQueryEngineConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineconfiguration"></a>

Contains configurations for an Amazon Redshift query engine. Specify the type of query engine in `type` and include the corresponding field. For more information, see [Build a knowledge base by connecting to a structured data source](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-build-structured.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineconfiguration-syntax.json"></a>

```
{
  "[ProvisionedConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-provisionedconfiguration)" : RedshiftProvisionedConfiguration,
  "[ServerlessConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-serverlessconfiguration)" : RedshiftServerlessConfiguration,
  "[Type](#cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineconfiguration-syntax.yaml"></a>

```
  [ProvisionedConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-provisionedconfiguration): 
    RedshiftProvisionedConfiguration
  [ServerlessConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-serverlessconfiguration): 
    RedshiftServerlessConfiguration
  [Type](#cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineconfiguration-properties"></a>

`ProvisionedConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-provisionedconfiguration"></a>
Specifies configurations for a provisioned Amazon Redshift query engine.  
*Required*: No  
*Type*: [RedshiftProvisionedConfiguration](aws-properties-bedrock-knowledgebase-redshiftprovisionedconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`ServerlessConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-serverlessconfiguration"></a>
Specifies configurations for a serverless Amazon Redshift query engine.  
*Required*: No  
*Type*: [RedshiftServerlessConfiguration](aws-properties-bedrock-knowledgebase-redshiftserverlessconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Type`  <a name="cfn-bedrock-knowledgebase-redshiftqueryengineconfiguration-type"></a>
The type of query engine.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `SERVERLESS | PROVISIONED`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftQueryEngineRedshiftStorageConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration"></a>

Contains configurations for storage in Amazon Redshift.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-syntax.json"></a>

```
{
  "[DatabaseName](#cfn-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-databasename)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-syntax.yaml"></a>

```
  [DatabaseName](#cfn-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-databasename): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-properties"></a>

`DatabaseName`  <a name="cfn-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration-databasename"></a>
The name of the Amazon Redshift database.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftQueryEngineStorageConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration"></a>

Contains configurations for Amazon Redshift data storage. Specify the data storage service to use in the `type` field and include the corresponding field. For more information, see [Build a knowledge base by connecting to a structured data source](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-build-structured.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-syntax.json"></a>

```
{
  "[AwsDataCatalogConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-awsdatacatalogconfiguration)" : RedshiftQueryEngineAwsDataCatalogStorageConfiguration,
  "[RedshiftConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-redshiftconfiguration)" : RedshiftQueryEngineRedshiftStorageConfiguration,
  "[Type](#cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-syntax.yaml"></a>

```
  [AwsDataCatalogConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-awsdatacatalogconfiguration): 
    RedshiftQueryEngineAwsDataCatalogStorageConfiguration
  [RedshiftConfiguration](#cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-redshiftconfiguration): 
    RedshiftQueryEngineRedshiftStorageConfiguration
  [Type](#cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-properties"></a>

`AwsDataCatalogConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-awsdatacatalogconfiguration"></a>
Specifies configurations for storage in AWS Glue Data Catalog.  
*Required*: No  
*Type*: [RedshiftQueryEngineAwsDataCatalogStorageConfiguration](aws-properties-bedrock-knowledgebase-redshiftqueryengineawsdatacatalogstorageconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RedshiftConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-redshiftconfiguration"></a>
Specifies configurations for storage in Amazon Redshift.  
*Required*: No  
*Type*: [RedshiftQueryEngineRedshiftStorageConfiguration](aws-properties-bedrock-knowledgebase-redshiftqueryengineredshiftstorageconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Type`  <a name="cfn-bedrock-knowledgebase-redshiftqueryenginestorageconfiguration-type"></a>
The data storage service to use.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `REDSHIFT | AWS_DATA_CATALOG`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftServerlessAuthConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessauthconfiguration"></a>

Specifies configurations for authentication to a Redshift Serverless. Specify the type of authentication to use in the `type` field and include the corresponding field. If you specify IAM authentication, you don't need to include another field.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessauthconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessauthconfiguration-syntax.json"></a>

```
{
  "[Type](#cfn-bedrock-knowledgebase-redshiftserverlessauthconfiguration-type)" : String,
  "[UsernamePasswordSecretArn](#cfn-bedrock-knowledgebase-redshiftserverlessauthconfiguration-usernamepasswordsecretarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessauthconfiguration-syntax.yaml"></a>

```
  [Type](#cfn-bedrock-knowledgebase-redshiftserverlessauthconfiguration-type): String
  [UsernamePasswordSecretArn](#cfn-bedrock-knowledgebase-redshiftserverlessauthconfiguration-usernamepasswordsecretarn): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessauthconfiguration-properties"></a>

`Type`  <a name="cfn-bedrock-knowledgebase-redshiftserverlessauthconfiguration-type"></a>
The type of authentication to use.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `IAM | USERNAME_PASSWORD`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`UsernamePasswordSecretArn`  <a name="cfn-bedrock-knowledgebase-redshiftserverlessauthconfiguration-usernamepasswordsecretarn"></a>
The ARN of an Secrets Manager secret for authentication.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):secretsmanager:[a-z0-9-]{1,20}:([0-9]{12}|):secret:[a-zA-Z0-9!/_+=.@-]{1,512}$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase RedshiftServerlessConfiguration
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessconfiguration"></a>

Contains configurations for authentication to Amazon Redshift Serverless.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessconfiguration-syntax.json"></a>

```
{
  "[AuthConfiguration](#cfn-bedrock-knowledgebase-redshiftserverlessconfiguration-authconfiguration)" : RedshiftServerlessAuthConfiguration,
  "[WorkgroupArn](#cfn-bedrock-knowledgebase-redshiftserverlessconfiguration-workgrouparn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessconfiguration-syntax.yaml"></a>

```
  [AuthConfiguration](#cfn-bedrock-knowledgebase-redshiftserverlessconfiguration-authconfiguration): 
    RedshiftServerlessAuthConfiguration
  [WorkgroupArn](#cfn-bedrock-knowledgebase-redshiftserverlessconfiguration-workgrouparn): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-redshiftserverlessconfiguration-properties"></a>

`AuthConfiguration`  <a name="cfn-bedrock-knowledgebase-redshiftserverlessconfiguration-authconfiguration"></a>
Specifies configurations for authentication to an Amazon Redshift provisioned data warehouse.  
*Required*: Yes  
*Type*: [RedshiftServerlessAuthConfiguration](aws-properties-bedrock-knowledgebase-redshiftserverlessauthconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`WorkgroupArn`  <a name="cfn-bedrock-knowledgebase-redshiftserverlessconfiguration-workgrouparn"></a>
The ARN of the Amazon Redshift workgroup.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:(aws(-[a-z]+)*):redshift-serverless:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:workgroup/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase S3Location
<a name="aws-properties-bedrock-knowledgebase-s3location"></a>

A storage location in an Amazon S3 bucket.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-s3location-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-s3location-syntax.json"></a>

```
{
  "[URI](#cfn-bedrock-knowledgebase-s3location-uri)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-s3location-syntax.yaml"></a>

```
  [URI](#cfn-bedrock-knowledgebase-s3location-uri): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-s3location-properties"></a>

`URI`  <a name="cfn-bedrock-knowledgebase-s3location-uri"></a>
An object URI starting with `s3://`.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^s3://.{1,128}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase S3VectorsConfiguration
<a name="aws-properties-bedrock-knowledgebase-s3vectorsconfiguration"></a>

Contains the storage configuration of the knowledge base for S3 vectors.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-s3vectorsconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-s3vectorsconfiguration-syntax.json"></a>

```
{
  "[IndexArn](#cfn-bedrock-knowledgebase-s3vectorsconfiguration-indexarn)" : String,
  "[IndexName](#cfn-bedrock-knowledgebase-s3vectorsconfiguration-indexname)" : String,
  "[VectorBucketArn](#cfn-bedrock-knowledgebase-s3vectorsconfiguration-vectorbucketarn)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-s3vectorsconfiguration-syntax.yaml"></a>

```
  [IndexArn](#cfn-bedrock-knowledgebase-s3vectorsconfiguration-indexarn): String
  [IndexName](#cfn-bedrock-knowledgebase-s3vectorsconfiguration-indexname): String
  [VectorBucketArn](#cfn-bedrock-knowledgebase-s3vectorsconfiguration-vectorbucketarn): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-s3vectorsconfiguration-properties"></a>

`IndexArn`  <a name="cfn-bedrock-knowledgebase-s3vectorsconfiguration-indexarn"></a>
The Amazon Resource Name (ARN) of the vector index used for the knowledge base. This ARN identifies the specific vector index resource within Amazon Bedrock.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`IndexName`  <a name="cfn-bedrock-knowledgebase-s3vectorsconfiguration-indexname"></a>
The name of the vector index used for the knowledge base. This name identifies the vector index within the Amazon Bedrock service.  
*Required*: No  
*Type*: String  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`VectorBucketArn`  <a name="cfn-bedrock-knowledgebase-s3vectorsconfiguration-vectorbucketarn"></a>
The Amazon Resource Name (ARN) of the S3 bucket where vector embeddings are stored. This bucket contains the vector data used by the knowledge base.  
*Required*: No  
*Type*: String  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase SqlKnowledgeBaseConfiguration
<a name="aws-properties-bedrock-knowledgebase-sqlknowledgebaseconfiguration"></a>

Contains configurations for a knowledge base connected to an SQL database. Specify the SQL database type in the `type` field and include the corresponding field. For more information, see [Build a knowledge base by connecting to a structured data source](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-build-structured.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-sqlknowledgebaseconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-sqlknowledgebaseconfiguration-syntax.json"></a>

```
{
  "[RedshiftConfiguration](#cfn-bedrock-knowledgebase-sqlknowledgebaseconfiguration-redshiftconfiguration)" : RedshiftConfiguration,
  "[Type](#cfn-bedrock-knowledgebase-sqlknowledgebaseconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-sqlknowledgebaseconfiguration-syntax.yaml"></a>

```
  [RedshiftConfiguration](#cfn-bedrock-knowledgebase-sqlknowledgebaseconfiguration-redshiftconfiguration): 
    RedshiftConfiguration
  [Type](#cfn-bedrock-knowledgebase-sqlknowledgebaseconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-sqlknowledgebaseconfiguration-properties"></a>

`RedshiftConfiguration`  <a name="cfn-bedrock-knowledgebase-sqlknowledgebaseconfiguration-redshiftconfiguration"></a>
Specifies configurations for a knowledge base connected to an Amazon Redshift database.  
*Required*: No  
*Type*: [RedshiftConfiguration](aws-properties-bedrock-knowledgebase-redshiftconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Type`  <a name="cfn-bedrock-knowledgebase-sqlknowledgebaseconfiguration-type"></a>
The type of SQL database to connect to the knowledge base.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `REDSHIFT`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase StorageConfiguration
<a name="aws-properties-bedrock-knowledgebase-storageconfiguration"></a>

Contains the storage configuration of the knowledge base.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-storageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-storageconfiguration-syntax.json"></a>

```
{
  "[MongoDbAtlasConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-mongodbatlasconfiguration)" : MongoDbAtlasConfiguration,
  "[NeptuneAnalyticsConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-neptuneanalyticsconfiguration)" : NeptuneAnalyticsConfiguration,
  "[OpensearchManagedClusterConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-opensearchmanagedclusterconfiguration)" : OpenSearchManagedClusterConfiguration,
  "[OpensearchServerlessConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-opensearchserverlessconfiguration)" : OpenSearchServerlessConfiguration,
  "[PineconeConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-pineconeconfiguration)" : PineconeConfiguration,
  "[RdsConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-rdsconfiguration)" : RdsConfiguration,
  "[S3VectorsConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-s3vectorsconfiguration)" : S3VectorsConfiguration,
  "[Type](#cfn-bedrock-knowledgebase-storageconfiguration-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-storageconfiguration-syntax.yaml"></a>

```
  [MongoDbAtlasConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-mongodbatlasconfiguration): 
    MongoDbAtlasConfiguration
  [NeptuneAnalyticsConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-neptuneanalyticsconfiguration): 
    NeptuneAnalyticsConfiguration
  [OpensearchManagedClusterConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-opensearchmanagedclusterconfiguration): 
    OpenSearchManagedClusterConfiguration
  [OpensearchServerlessConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-opensearchserverlessconfiguration): 
    OpenSearchServerlessConfiguration
  [PineconeConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-pineconeconfiguration): 
    PineconeConfiguration
  [RdsConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-rdsconfiguration): 
    RdsConfiguration
  [S3VectorsConfiguration](#cfn-bedrock-knowledgebase-storageconfiguration-s3vectorsconfiguration): 
    S3VectorsConfiguration
  [Type](#cfn-bedrock-knowledgebase-storageconfiguration-type): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-storageconfiguration-properties"></a>

`MongoDbAtlasConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-mongodbatlasconfiguration"></a>
Contains the storage configuration of the knowledge base in MongoDB Atlas.  
*Required*: No  
*Type*: [MongoDbAtlasConfiguration](aws-properties-bedrock-knowledgebase-mongodbatlasconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`NeptuneAnalyticsConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-neptuneanalyticsconfiguration"></a>
Contains details about the Neptune Analytics configuration of the knowledge base in Amazon Neptune. For more information, see [Create a vector index in Amazon Neptune Analytics.](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-neptune.html).  
*Required*: No  
*Type*: [NeptuneAnalyticsConfiguration](aws-properties-bedrock-knowledgebase-neptuneanalyticsconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`OpensearchManagedClusterConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-opensearchmanagedclusterconfiguration"></a>
Contains details about the storage configuration of the knowledge base in OpenSearch Managed Cluster. For more information, see [Create a vector index in Amazon OpenSearch Service](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-osm.html).  
*Required*: No  
*Type*: [OpenSearchManagedClusterConfiguration](aws-properties-bedrock-knowledgebase-opensearchmanagedclusterconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`OpensearchServerlessConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-opensearchserverlessconfiguration"></a>
Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.  
*Required*: No  
*Type*: [OpenSearchServerlessConfiguration](aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PineconeConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-pineconeconfiguration"></a>
Contains the storage configuration of the knowledge base in Pinecone.  
*Required*: No  
*Type*: [PineconeConfiguration](aws-properties-bedrock-knowledgebase-pineconeconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`RdsConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-rdsconfiguration"></a>
Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see [Create a vector index in Amazon RDS](https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-rds.html).  
*Required*: No  
*Type*: [RdsConfiguration](aws-properties-bedrock-knowledgebase-rdsconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`S3VectorsConfiguration`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-s3vectorsconfiguration"></a>
The configuration settings for storing knowledge base data using S3 vectors. This includes vector index information and S3 bucket details for vector storage.  
*Required*: No  
*Type*: [S3VectorsConfiguration](aws-properties-bedrock-knowledgebase-s3vectorsconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Type`  <a name="cfn-bedrock-knowledgebase-storageconfiguration-type"></a>
The vector store service in which the knowledge base is stored.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `OPENSEARCH_SERVERLESS | PINECONE | RDS | MONGO_DB_ATLAS | NEPTUNE_ANALYTICS | S3_VECTORS | OPENSEARCH_MANAGED_CLUSTER`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase SupplementalDataStorageConfiguration
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastorageconfiguration"></a>

Specifies configurations for the storage location of multimedia content (images, audio, and video) extracted from multimodal documents in your data source. This content can be retrieved and returned to the end user with timestamp references for audio and video segments.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastorageconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastorageconfiguration-syntax.json"></a>

```
{
  "[SupplementalDataStorageLocations](#cfn-bedrock-knowledgebase-supplementaldatastorageconfiguration-supplementaldatastoragelocations)" : [ SupplementalDataStorageLocation, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastorageconfiguration-syntax.yaml"></a>

```
  [SupplementalDataStorageLocations](#cfn-bedrock-knowledgebase-supplementaldatastorageconfiguration-supplementaldatastoragelocations): 
    - SupplementalDataStorageLocation
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastorageconfiguration-properties"></a>

`SupplementalDataStorageLocations`  <a name="cfn-bedrock-knowledgebase-supplementaldatastorageconfiguration-supplementaldatastoragelocations"></a>
Property description not available.  
*Required*: Yes  
*Type*: Array of [SupplementalDataStorageLocation](aws-properties-bedrock-knowledgebase-supplementaldatastoragelocation.md)  
*Minimum*: `1`  
*Maximum*: `1`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase SupplementalDataStorageLocation
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastoragelocation"></a>

Contains information about a storage location for multimedia content (images, audio, and video) extracted from multimodal documents in your data source.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastoragelocation-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastoragelocation-syntax.json"></a>

```
{
  "[S3Location](#cfn-bedrock-knowledgebase-supplementaldatastoragelocation-s3location)" : S3Location,
  "[SupplementalDataStorageLocationType](#cfn-bedrock-knowledgebase-supplementaldatastoragelocation-supplementaldatastoragelocationtype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastoragelocation-syntax.yaml"></a>

```
  [S3Location](#cfn-bedrock-knowledgebase-supplementaldatastoragelocation-s3location): 
    S3Location
  [SupplementalDataStorageLocationType](#cfn-bedrock-knowledgebase-supplementaldatastoragelocation-supplementaldatastoragelocationtype): String
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-supplementaldatastoragelocation-properties"></a>

`S3Location`  <a name="cfn-bedrock-knowledgebase-supplementaldatastoragelocation-s3location"></a>
Contains information about the Amazon S3 location for the extracted multimedia content.  
*Required*: No  
*Type*: [S3Location](aws-properties-bedrock-knowledgebase-s3location.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SupplementalDataStorageLocationType`  <a name="cfn-bedrock-knowledgebase-supplementaldatastoragelocation-supplementaldatastoragelocationtype"></a>
Property description not available.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `S3`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase VectorKnowledgeBaseConfiguration
<a name="aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration-syntax.json"></a>

```
{
  "[EmbeddingModelArn](#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelarn)" : String,
  "[EmbeddingModelConfiguration](#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelconfiguration)" : EmbeddingModelConfiguration,
  "[SupplementalDataStorageConfiguration](#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-supplementaldatastorageconfiguration)" : SupplementalDataStorageConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration-syntax.yaml"></a>

```
  [EmbeddingModelArn](#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelarn): String
  [EmbeddingModelConfiguration](#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelconfiguration): 
    EmbeddingModelConfiguration
  [SupplementalDataStorageConfiguration](#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-supplementaldatastorageconfiguration): 
    SupplementalDataStorageConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration-properties"></a>

`EmbeddingModelArn`  <a name="cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelarn"></a>
The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:[a-z0-9-]+:[a-z0-9-]{1,20}:[0-9]{0,12}:[a-zA-Z0-9-:/._+]+)$`  
*Minimum*: `20`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`EmbeddingModelConfiguration`  <a name="cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelconfiguration"></a>
The embeddings model configuration details for the vector model used in Knowledge Base.  
*Required*: No  
*Type*: [EmbeddingModelConfiguration](aws-properties-bedrock-knowledgebase-embeddingmodelconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`SupplementalDataStorageConfiguration`  <a name="cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-supplementaldatastorageconfiguration"></a>
If you include multimodal data from your data source, use this object to specify configurations for the storage location of the images extracted from your documents. These images can be retrieved and returned to the end user. They can also be used in generation when using [RetrieveAndGenerate](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_RetrieveAndGenerate.html).  
*Required*: No  
*Type*: [SupplementalDataStorageConfiguration](aws-properties-bedrock-knowledgebase-supplementaldatastorageconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase VideoConfiguration
<a name="aws-properties-bedrock-knowledgebase-videoconfiguration"></a>

Configuration settings for processing video content in multimodal knowledge bases.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-videoconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-videoconfiguration-syntax.json"></a>

```
{
  "[SegmentationConfiguration](#cfn-bedrock-knowledgebase-videoconfiguration-segmentationconfiguration)" : VideoSegmentationConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-videoconfiguration-syntax.yaml"></a>

```
  [SegmentationConfiguration](#cfn-bedrock-knowledgebase-videoconfiguration-segmentationconfiguration): 
    VideoSegmentationConfiguration
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-videoconfiguration-properties"></a>

`SegmentationConfiguration`  <a name="cfn-bedrock-knowledgebase-videoconfiguration-segmentationconfiguration"></a>
Configuration for segmenting video content during processing.  
*Required*: Yes  
*Type*: [VideoSegmentationConfiguration](aws-properties-bedrock-knowledgebase-videosegmentationconfiguration.md)  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::KnowledgeBase VideoSegmentationConfiguration
<a name="aws-properties-bedrock-knowledgebase-videosegmentationconfiguration"></a>

Configuration for segmenting video content during multimodal knowledge base ingestion. Determines how video files are divided into chunks for processing.

## Syntax
<a name="aws-properties-bedrock-knowledgebase-videosegmentationconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-knowledgebase-videosegmentationconfiguration-syntax.json"></a>

```
{
  "[FixedLengthDuration](#cfn-bedrock-knowledgebase-videosegmentationconfiguration-fixedlengthduration)" : Integer
}
```

### YAML
<a name="aws-properties-bedrock-knowledgebase-videosegmentationconfiguration-syntax.yaml"></a>

```
  [FixedLengthDuration](#cfn-bedrock-knowledgebase-videosegmentationconfiguration-fixedlengthduration): Integer
```

## Properties
<a name="aws-properties-bedrock-knowledgebase-videosegmentationconfiguration-properties"></a>

`FixedLengthDuration`  <a name="cfn-bedrock-knowledgebase-videosegmentationconfiguration-fixedlengthduration"></a>
The duration in seconds for each video segment. Video files will be divided into chunks of this length for processing.  
*Required*: Yes  
*Type*: Integer  
*Minimum*: `1`  
*Maximum*: `30`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

# AWS::Bedrock::Prompt
<a name="aws-resource-bedrock-prompt"></a>

Creates a prompt in your prompt library that you can add to a flow. For more information, see [Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html), [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html) and [Prompt flows in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/flows.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-resource-bedrock-prompt-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-prompt-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::Prompt",
  "Properties" : {
      "[CustomerEncryptionKeyArn](#cfn-bedrock-prompt-customerencryptionkeyarn)" : String,
      "[DefaultVariant](#cfn-bedrock-prompt-defaultvariant)" : String,
      "[Description](#cfn-bedrock-prompt-description)" : String,
      "[Name](#cfn-bedrock-prompt-name)" : String,
      "[Tags](#cfn-bedrock-prompt-tags)" : {Key: Value, ...},
      "[Variants](#cfn-bedrock-prompt-variants)" : [ PromptVariant, ... ]
    }
}
```

### YAML
<a name="aws-resource-bedrock-prompt-syntax.yaml"></a>

```
Type: AWS::Bedrock::Prompt
Properties:
  [CustomerEncryptionKeyArn](#cfn-bedrock-prompt-customerencryptionkeyarn): String
  [DefaultVariant](#cfn-bedrock-prompt-defaultvariant): String
  [Description](#cfn-bedrock-prompt-description): String
  [Name](#cfn-bedrock-prompt-name): String
  [Tags](#cfn-bedrock-prompt-tags): 
    Key: Value
  [Variants](#cfn-bedrock-prompt-variants): 
    - PromptVariant
```

## Properties
<a name="aws-resource-bedrock-prompt-properties"></a>

`CustomerEncryptionKeyArn`  <a name="cfn-bedrock-prompt-customerencryptionkeyarn"></a>
The Amazon Resource Name (ARN) of the KMS key that the prompt is encrypted with.  
*Required*: No  
*Type*: String  
*Pattern*: `^arn:aws(|-cn|-us-gov):kms:[a-zA-Z0-9-]*:[0-9]{12}:key/[a-zA-Z0-9-]{36}$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`DefaultVariant`  <a name="cfn-bedrock-prompt-defaultvariant"></a>
The name of the default variant for the prompt. This value must match the `name` field in the relevant [PromptVariant](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptVariant.html) object.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Description`  <a name="cfn-bedrock-prompt-description"></a>
The description of the prompt.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-prompt-name"></a>
The name of the prompt.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tags`  <a name="cfn-bedrock-prompt-tags"></a>
Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:  
+  [Tag naming limits and requirements](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions) 
+  [Tagging best practices](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices) 
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Variants`  <a name="cfn-bedrock-prompt-variants"></a>
A list of objects, each containing details about a variant of the prompt.  
*Required*: No  
*Type*: Array of [PromptVariant](aws-properties-bedrock-prompt-promptvariant.md)  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

## Return values
<a name="aws-resource-bedrock-prompt-return-values"></a>

### Ref
<a name="aws-resource-bedrock-prompt-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Number (ARN) of the prompt.

For example, `{ "Ref": "myPrompt" }` could return the value `"arn:aws:bedrock:us-east-1:123456789012:prompt/PROMPT12345"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-prompt-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-prompt-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the prompt or the prompt version (if you specified a version in the request).

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the prompt was created.

`Id`  <a name="Id-fn::getatt"></a>
The unique identifier of the prompt.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the prompt was last updated.

`Version`  <a name="Version-fn::getatt"></a>
The version of the prompt that this summary applies to.

# AWS::Bedrock::Prompt CachePointBlock
<a name="aws-properties-bedrock-prompt-cachepointblock"></a>

Defines a section of content to be cached for reuse in subsequent API calls.

## Syntax
<a name="aws-properties-bedrock-prompt-cachepointblock-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-cachepointblock-syntax.json"></a>

```
{
  "[Type](#cfn-bedrock-prompt-cachepointblock-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-cachepointblock-syntax.yaml"></a>

```
  [Type](#cfn-bedrock-prompt-cachepointblock-type): String
```

## Properties
<a name="aws-properties-bedrock-prompt-cachepointblock-properties"></a>

`Type`  <a name="cfn-bedrock-prompt-cachepointblock-type"></a>
Specifies the type of cache point within the CachePointBlock.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `default`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt ChatPromptTemplateConfiguration
<a name="aws-properties-bedrock-prompt-chatprompttemplateconfiguration"></a>

Contains configurations to use a prompt in a conversational format. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html).

## Syntax
<a name="aws-properties-bedrock-prompt-chatprompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-chatprompttemplateconfiguration-syntax.json"></a>

```
{
  "[InputVariables](#cfn-bedrock-prompt-chatprompttemplateconfiguration-inputvariables)" : [ PromptInputVariable, ... ],
  "[Messages](#cfn-bedrock-prompt-chatprompttemplateconfiguration-messages)" : [ Message, ... ],
  "[System](#cfn-bedrock-prompt-chatprompttemplateconfiguration-system)" : [ SystemContentBlock, ... ],
  "[ToolConfiguration](#cfn-bedrock-prompt-chatprompttemplateconfiguration-toolconfiguration)" : ToolConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-prompt-chatprompttemplateconfiguration-syntax.yaml"></a>

```
  [InputVariables](#cfn-bedrock-prompt-chatprompttemplateconfiguration-inputvariables): 
    - PromptInputVariable
  [Messages](#cfn-bedrock-prompt-chatprompttemplateconfiguration-messages): 
    - Message
  [System](#cfn-bedrock-prompt-chatprompttemplateconfiguration-system): 
    - SystemContentBlock
  [ToolConfiguration](#cfn-bedrock-prompt-chatprompttemplateconfiguration-toolconfiguration): 
    ToolConfiguration
```

## Properties
<a name="aws-properties-bedrock-prompt-chatprompttemplateconfiguration-properties"></a>

`InputVariables`  <a name="cfn-bedrock-prompt-chatprompttemplateconfiguration-inputvariables"></a>
An array of the variables in the prompt template.  
*Required*: No  
*Type*: Array of [PromptInputVariable](aws-properties-bedrock-prompt-promptinputvariable.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Messages`  <a name="cfn-bedrock-prompt-chatprompttemplateconfiguration-messages"></a>
Contains messages in the chat for the prompt.  
*Required*: Yes  
*Type*: Array of [Message](aws-properties-bedrock-prompt-message.md)  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`System`  <a name="cfn-bedrock-prompt-chatprompttemplateconfiguration-system"></a>
Contains system prompts to provide context to the model or to describe how it should behave.  
*Required*: No  
*Type*: Array of [SystemContentBlock](aws-properties-bedrock-prompt-systemcontentblock.md)  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ToolConfiguration`  <a name="cfn-bedrock-prompt-chatprompttemplateconfiguration-toolconfiguration"></a>
Configuration information for the tools that the model can use when generating a response.  
*Required*: No  
*Type*: [ToolConfiguration](aws-properties-bedrock-prompt-toolconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt ContentBlock
<a name="aws-properties-bedrock-prompt-contentblock"></a>

A block of content for a message that you pass to, or receive from, a model with the [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) or [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html) API operations.

## Syntax
<a name="aws-properties-bedrock-prompt-contentblock-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-contentblock-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-prompt-contentblock-cachepoint)" : CachePointBlock,
  "[Text](#cfn-bedrock-prompt-contentblock-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-contentblock-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-prompt-contentblock-cachepoint): 
    CachePointBlock
  [Text](#cfn-bedrock-prompt-contentblock-text): String
```

## Properties
<a name="aws-properties-bedrock-prompt-contentblock-properties"></a>

`CachePoint`  <a name="cfn-bedrock-prompt-contentblock-cachepoint"></a>
CachePoint to include in the message.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-prompt-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-prompt-contentblock-text"></a>
Text to include in the message.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt Message
<a name="aws-properties-bedrock-prompt-message"></a>

A message input, or returned from, a call to [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) or [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html).

## Syntax
<a name="aws-properties-bedrock-prompt-message-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-message-syntax.json"></a>

```
{
  "[Content](#cfn-bedrock-prompt-message-content)" : [ ContentBlock, ... ],
  "[Role](#cfn-bedrock-prompt-message-role)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-message-syntax.yaml"></a>

```
  [Content](#cfn-bedrock-prompt-message-content): 
    - ContentBlock
  [Role](#cfn-bedrock-prompt-message-role): String
```

## Properties
<a name="aws-properties-bedrock-prompt-message-properties"></a>

`Content`  <a name="cfn-bedrock-prompt-message-content"></a>
The message content. Note the following restrictions:  
+ You can include up to 20 images. Each image's size, height, and width must be no more than 3.75 MB, 8000 px, and 8000 px, respectively.
+ You can include up to five documents. Each document's size must be no more than 4.5 MB.
+ If you include a `ContentBlock` with a `document` field in the array, you must also include a `ContentBlock` with a `text` field.
+ You can only include images and documents if the `role` is `user`.
*Required*: Yes  
*Type*: Array of [ContentBlock](aws-properties-bedrock-prompt-contentblock.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Role`  <a name="cfn-bedrock-prompt-message-role"></a>
The role that the message plays in the message.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `user | assistant`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptAgentResource
<a name="aws-properties-bedrock-prompt-promptagentresource"></a>

Contains specifications for an Amazon Bedrock agent with which to use the prompt. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html) and [Automate tasks in your application using conversational agents](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html).

## Syntax
<a name="aws-properties-bedrock-prompt-promptagentresource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptagentresource-syntax.json"></a>

```
{
  "[AgentIdentifier](#cfn-bedrock-prompt-promptagentresource-agentidentifier)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptagentresource-syntax.yaml"></a>

```
  [AgentIdentifier](#cfn-bedrock-prompt-promptagentresource-agentidentifier): String
```

## Properties
<a name="aws-properties-bedrock-prompt-promptagentresource-properties"></a>

`AgentIdentifier`  <a name="cfn-bedrock-prompt-promptagentresource-agentidentifier"></a>
The ARN of the agent with which to use the prompt.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptGenAiResource
<a name="aws-properties-bedrock-prompt-promptgenairesource"></a>

Contains specifications for a generative AI resource with which to use the prompt. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html).

## Syntax
<a name="aws-properties-bedrock-prompt-promptgenairesource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptgenairesource-syntax.json"></a>

```
{
  "[Agent](#cfn-bedrock-prompt-promptgenairesource-agent)" : PromptAgentResource
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptgenairesource-syntax.yaml"></a>

```
  [Agent](#cfn-bedrock-prompt-promptgenairesource-agent): 
    PromptAgentResource
```

## Properties
<a name="aws-properties-bedrock-prompt-promptgenairesource-properties"></a>

`Agent`  <a name="cfn-bedrock-prompt-promptgenairesource-agent"></a>
Specifies an Amazon Bedrock agent with which to use the prompt.  
*Required*: Yes  
*Type*: [PromptAgentResource](aws-properties-bedrock-prompt-promptagentresource.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptInferenceConfiguration
<a name="aws-properties-bedrock-prompt-promptinferenceconfiguration"></a>

Contains inference configurations for the prompt.

## Syntax
<a name="aws-properties-bedrock-prompt-promptinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptinferenceconfiguration-syntax.json"></a>

```
{
  "[Text](#cfn-bedrock-prompt-promptinferenceconfiguration-text)" : PromptModelInferenceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptinferenceconfiguration-syntax.yaml"></a>

```
  [Text](#cfn-bedrock-prompt-promptinferenceconfiguration-text): 
    PromptModelInferenceConfiguration
```

## Properties
<a name="aws-properties-bedrock-prompt-promptinferenceconfiguration-properties"></a>

`Text`  <a name="cfn-bedrock-prompt-promptinferenceconfiguration-text"></a>
Contains inference configurations for a text prompt.  
*Required*: Yes  
*Type*: [PromptModelInferenceConfiguration](aws-properties-bedrock-prompt-promptmodelinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptInputVariable
<a name="aws-properties-bedrock-prompt-promptinputvariable"></a>

Contains information about a variable in the prompt.

## Syntax
<a name="aws-properties-bedrock-prompt-promptinputvariable-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptinputvariable-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-prompt-promptinputvariable-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptinputvariable-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-prompt-promptinputvariable-name): String
```

## Properties
<a name="aws-properties-bedrock-prompt-promptinputvariable-properties"></a>

`Name`  <a name="cfn-bedrock-prompt-promptinputvariable-name"></a>
The name of the variable.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptMetadataEntry
<a name="aws-properties-bedrock-prompt-promptmetadataentry"></a>

Contains a key-value pair that defines a metadata tag and value to attach to a prompt variant. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html).

## Syntax
<a name="aws-properties-bedrock-prompt-promptmetadataentry-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptmetadataentry-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-prompt-promptmetadataentry-key)" : String,
  "[Value](#cfn-bedrock-prompt-promptmetadataentry-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptmetadataentry-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-prompt-promptmetadataentry-key): String
  [Value](#cfn-bedrock-prompt-promptmetadataentry-value): String
```

## Properties
<a name="aws-properties-bedrock-prompt-promptmetadataentry-properties"></a>

`Key`  <a name="cfn-bedrock-prompt-promptmetadataentry-key"></a>
The key of a metadata tag for a prompt variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-prompt-promptmetadataentry-value"></a>
The value of a metadata tag for a prompt variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptModelInferenceConfiguration
<a name="aws-properties-bedrock-prompt-promptmodelinferenceconfiguration"></a>

Contains inference configurations related to model inference for a prompt. For more information, see [Inference parameters](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-parameters.html).

## Syntax
<a name="aws-properties-bedrock-prompt-promptmodelinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptmodelinferenceconfiguration-syntax.json"></a>

```
{
  "[MaxTokens](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-maxtokens)" : Number,
  "[StopSequences](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-stopsequences)" : [ String, ... ],
  "[Temperature](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-temperature)" : Number,
  "[TopP](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-topp)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptmodelinferenceconfiguration-syntax.yaml"></a>

```
  [MaxTokens](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-maxtokens): Number
  [StopSequences](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-stopsequences): 
    - String
  [Temperature](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-temperature): Number
  [TopP](#cfn-bedrock-prompt-promptmodelinferenceconfiguration-topp): Number
```

## Properties
<a name="aws-properties-bedrock-prompt-promptmodelinferenceconfiguration-properties"></a>

`MaxTokens`  <a name="cfn-bedrock-prompt-promptmodelinferenceconfiguration-maxtokens"></a>
The maximum number of tokens to return in the response.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `512000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StopSequences`  <a name="cfn-bedrock-prompt-promptmodelinferenceconfiguration-stopsequences"></a>
A list of strings that define sequences after which the model will stop generating.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `4`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Temperature`  <a name="cfn-bedrock-prompt-promptmodelinferenceconfiguration-temperature"></a>
Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopP`  <a name="cfn-bedrock-prompt-promptmodelinferenceconfiguration-topp"></a>
The percentage of most-likely candidates that the model considers for the next token.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptTemplateConfiguration
<a name="aws-properties-bedrock-prompt-prompttemplateconfiguration"></a>

Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html).

## Syntax
<a name="aws-properties-bedrock-prompt-prompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-prompttemplateconfiguration-syntax.json"></a>

```
{
  "[Chat](#cfn-bedrock-prompt-prompttemplateconfiguration-chat)" : ChatPromptTemplateConfiguration,
  "[Text](#cfn-bedrock-prompt-prompttemplateconfiguration-text)" : TextPromptTemplateConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-prompt-prompttemplateconfiguration-syntax.yaml"></a>

```
  [Chat](#cfn-bedrock-prompt-prompttemplateconfiguration-chat): 
    ChatPromptTemplateConfiguration
  [Text](#cfn-bedrock-prompt-prompttemplateconfiguration-text): 
    TextPromptTemplateConfiguration
```

## Properties
<a name="aws-properties-bedrock-prompt-prompttemplateconfiguration-properties"></a>

`Chat`  <a name="cfn-bedrock-prompt-prompttemplateconfiguration-chat"></a>
Contains configurations to use the prompt in a conversational format.  
*Required*: No  
*Type*: [ChatPromptTemplateConfiguration](aws-properties-bedrock-prompt-chatprompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-prompt-prompttemplateconfiguration-text"></a>
Contains configurations for the text in a message for a prompt.  
*Required*: No  
*Type*: [TextPromptTemplateConfiguration](aws-properties-bedrock-prompt-textprompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt PromptVariant
<a name="aws-properties-bedrock-prompt-promptvariant"></a>

Contains details about a variant of the prompt.

## Syntax
<a name="aws-properties-bedrock-prompt-promptvariant-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-promptvariant-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-prompt-promptvariant-additionalmodelrequestfields)" : Json,
  "[GenAiResource](#cfn-bedrock-prompt-promptvariant-genairesource)" : PromptGenAiResource,
  "[InferenceConfiguration](#cfn-bedrock-prompt-promptvariant-inferenceconfiguration)" : PromptInferenceConfiguration,
  "[Metadata](#cfn-bedrock-prompt-promptvariant-metadata)" : [ PromptMetadataEntry, ... ],
  "[ModelId](#cfn-bedrock-prompt-promptvariant-modelid)" : String,
  "[Name](#cfn-bedrock-prompt-promptvariant-name)" : String,
  "[TemplateConfiguration](#cfn-bedrock-prompt-promptvariant-templateconfiguration)" : PromptTemplateConfiguration,
  "[TemplateType](#cfn-bedrock-prompt-promptvariant-templatetype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-promptvariant-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-prompt-promptvariant-additionalmodelrequestfields): Json
  [GenAiResource](#cfn-bedrock-prompt-promptvariant-genairesource): 
    PromptGenAiResource
  [InferenceConfiguration](#cfn-bedrock-prompt-promptvariant-inferenceconfiguration): 
    PromptInferenceConfiguration
  [Metadata](#cfn-bedrock-prompt-promptvariant-metadata): 
    - PromptMetadataEntry
  [ModelId](#cfn-bedrock-prompt-promptvariant-modelid): String
  [Name](#cfn-bedrock-prompt-promptvariant-name): String
  [TemplateConfiguration](#cfn-bedrock-prompt-promptvariant-templateconfiguration): 
    PromptTemplateConfiguration
  [TemplateType](#cfn-bedrock-prompt-promptvariant-templatetype): String
```

## Properties
<a name="aws-properties-bedrock-prompt-promptvariant-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-prompt-promptvariant-additionalmodelrequestfields"></a>
Contains model-specific inference configurations that aren't in the `inferenceConfiguration` field. To see model-specific inference parameters, see [Inference request parameters and response fields for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenAiResource`  <a name="cfn-bedrock-prompt-promptvariant-genairesource"></a>
Specifies a generative AI resource with which to use the prompt.  
*Required*: No  
*Type*: [PromptGenAiResource](aws-properties-bedrock-prompt-promptgenairesource.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfiguration`  <a name="cfn-bedrock-prompt-promptvariant-inferenceconfiguration"></a>
Contains inference configurations for the prompt variant.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-prompt-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Metadata`  <a name="cfn-bedrock-prompt-promptvariant-metadata"></a>
An array of objects, each containing a key-value pair that defines a metadata tag and value to attach to a prompt variant.  
*Required*: No  
*Type*: Array of [PromptMetadataEntry](aws-properties-bedrock-prompt-promptmetadataentry.md)  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelId`  <a name="cfn-bedrock-prompt-promptvariant-modelid"></a>
The unique identifier of the model or [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html) with which to run inference on the prompt.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-prompt-promptvariant-name"></a>
The name of the prompt variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateConfiguration`  <a name="cfn-bedrock-prompt-promptvariant-templateconfiguration"></a>
Contains configurations for the prompt template.  
*Required*: Yes  
*Type*: [PromptTemplateConfiguration](aws-properties-bedrock-prompt-prompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateType`  <a name="cfn-bedrock-prompt-promptvariant-templatetype"></a>
The type of prompt template to use.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `TEXT | CHAT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt SpecificToolChoice
<a name="aws-properties-bedrock-prompt-specifictoolchoice"></a>

The model must request a specific tool. For example, `{"tool" : {"name" : "Your tool name"}}`. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide

**Note**  
This field is only supported by Anthropic Claude 3 models.

## Syntax
<a name="aws-properties-bedrock-prompt-specifictoolchoice-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-specifictoolchoice-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-prompt-specifictoolchoice-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-specifictoolchoice-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-prompt-specifictoolchoice-name): String
```

## Properties
<a name="aws-properties-bedrock-prompt-specifictoolchoice-properties"></a>

`Name`  <a name="cfn-bedrock-prompt-specifictoolchoice-name"></a>
The name of the tool that the model must request.   
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z][a-zA-Z0-9_]*$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt SystemContentBlock
<a name="aws-properties-bedrock-prompt-systemcontentblock"></a>

Contains configurations for instructions to provide the model for how to handle input. To learn more, see [Using the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference-call.html).

## Syntax
<a name="aws-properties-bedrock-prompt-systemcontentblock-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-systemcontentblock-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-prompt-systemcontentblock-cachepoint)" : CachePointBlock,
  "[Text](#cfn-bedrock-prompt-systemcontentblock-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-systemcontentblock-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-prompt-systemcontentblock-cachepoint): 
    CachePointBlock
  [Text](#cfn-bedrock-prompt-systemcontentblock-text): String
```

## Properties
<a name="aws-properties-bedrock-prompt-systemcontentblock-properties"></a>

`CachePoint`  <a name="cfn-bedrock-prompt-systemcontentblock-cachepoint"></a>
CachePoint to include in the system prompt.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-prompt-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-prompt-systemcontentblock-text"></a>
A system prompt for the model.   
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt TextPromptTemplateConfiguration
<a name="aws-properties-bedrock-prompt-textprompttemplateconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-prompt-textprompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-textprompttemplateconfiguration-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-prompt-textprompttemplateconfiguration-cachepoint)" : CachePointBlock,
  "[InputVariables](#cfn-bedrock-prompt-textprompttemplateconfiguration-inputvariables)" : [ PromptInputVariable, ... ],
  "[Text](#cfn-bedrock-prompt-textprompttemplateconfiguration-text)" : String,
  "[TextS3Location](#cfn-bedrock-prompt-textprompttemplateconfiguration-texts3location)" : TextS3Location
}
```

### YAML
<a name="aws-properties-bedrock-prompt-textprompttemplateconfiguration-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-prompt-textprompttemplateconfiguration-cachepoint): 
    CachePointBlock
  [InputVariables](#cfn-bedrock-prompt-textprompttemplateconfiguration-inputvariables): 
    - PromptInputVariable
  [Text](#cfn-bedrock-prompt-textprompttemplateconfiguration-text): String
  [TextS3Location](#cfn-bedrock-prompt-textprompttemplateconfiguration-texts3location): 
    TextS3Location
```

## Properties
<a name="aws-properties-bedrock-prompt-textprompttemplateconfiguration-properties"></a>

`CachePoint`  <a name="cfn-bedrock-prompt-textprompttemplateconfiguration-cachepoint"></a>
A cache checkpoint within a template configuration.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-prompt-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputVariables`  <a name="cfn-bedrock-prompt-textprompttemplateconfiguration-inputvariables"></a>
An array of the variables in the prompt template.  
*Required*: No  
*Type*: Array of [PromptInputVariable](aws-properties-bedrock-prompt-promptinputvariable.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-prompt-textprompttemplateconfiguration-text"></a>
The message for the prompt.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TextS3Location`  <a name="cfn-bedrock-prompt-textprompttemplateconfiguration-texts3location"></a>
The Amazon S3location of the prompt text.  
*Required*: No  
*Type*: [TextS3Location](aws-properties-bedrock-prompt-texts3location.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt TextS3Location
<a name="aws-properties-bedrock-prompt-texts3location"></a>

The Amazon S3location of the prompt text.

## Syntax
<a name="aws-properties-bedrock-prompt-texts3location-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-texts3location-syntax.json"></a>

```
{
  "[Bucket](#cfn-bedrock-prompt-texts3location-bucket)" : String,
  "[Key](#cfn-bedrock-prompt-texts3location-key)" : String,
  "[Version](#cfn-bedrock-prompt-texts3location-version)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-texts3location-syntax.yaml"></a>

```
  [Bucket](#cfn-bedrock-prompt-texts3location-bucket): String
  [Key](#cfn-bedrock-prompt-texts3location-key): String
  [Version](#cfn-bedrock-prompt-texts3location-version): String
```

## Properties
<a name="aws-properties-bedrock-prompt-texts3location-properties"></a>

`Bucket`  <a name="cfn-bedrock-prompt-texts3location-bucket"></a>
The Amazon S3bucket containing the prompt text.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-z0-9][\.\-a-z0-9]{1,61}[a-z0-9]$`  
*Minimum*: `3`  
*Maximum*: `63`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Key`  <a name="cfn-bedrock-prompt-texts3location-key"></a>
The object key for the Amazon S3 location.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Version`  <a name="cfn-bedrock-prompt-texts3location-version"></a>
The version of the Amazon S3location to use.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt Tool
<a name="aws-properties-bedrock-prompt-tool"></a>

Information about a tool that you can use with the Converse API. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-prompt-tool-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-tool-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-prompt-tool-cachepoint)" : CachePointBlock,
  "[ToolSpec](#cfn-bedrock-prompt-tool-toolspec)" : ToolSpecification
}
```

### YAML
<a name="aws-properties-bedrock-prompt-tool-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-prompt-tool-cachepoint): 
    CachePointBlock
  [ToolSpec](#cfn-bedrock-prompt-tool-toolspec): 
    ToolSpecification
```

## Properties
<a name="aws-properties-bedrock-prompt-tool-properties"></a>

`CachePoint`  <a name="cfn-bedrock-prompt-tool-cachepoint"></a>
CachePoint to include in the tool configuration.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-prompt-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ToolSpec`  <a name="cfn-bedrock-prompt-tool-toolspec"></a>
The specfication for the tool.   
*Required*: No  
*Type*: [ToolSpecification](aws-properties-bedrock-prompt-toolspecification.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt ToolChoice
<a name="aws-properties-bedrock-prompt-toolchoice"></a>

Determines which tools the model should request in a call to `Converse` or `ConverseStream`. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-prompt-toolchoice-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-toolchoice-syntax.json"></a>

```
{
  "[Any](#cfn-bedrock-prompt-toolchoice-any)" : Json,
  "[Auto](#cfn-bedrock-prompt-toolchoice-auto)" : Json,
  "[Tool](#cfn-bedrock-prompt-toolchoice-tool)" : SpecificToolChoice
}
```

### YAML
<a name="aws-properties-bedrock-prompt-toolchoice-syntax.yaml"></a>

```
  [Any](#cfn-bedrock-prompt-toolchoice-any): Json
  [Auto](#cfn-bedrock-prompt-toolchoice-auto): Json
  [Tool](#cfn-bedrock-prompt-toolchoice-tool): 
    SpecificToolChoice
```

## Properties
<a name="aws-properties-bedrock-prompt-toolchoice-properties"></a>

`Any`  <a name="cfn-bedrock-prompt-toolchoice-any"></a>
The model must request at least one tool (no text is generated).  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Auto`  <a name="cfn-bedrock-prompt-toolchoice-auto"></a>
(Default). The Model automatically decides if a tool should be called or whether to generate text instead.   
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tool`  <a name="cfn-bedrock-prompt-toolchoice-tool"></a>
The Model must request the specified tool. Only supported by Anthropic Claude 3 and Amazon Nova models.   
*Required*: No  
*Type*: [SpecificToolChoice](aws-properties-bedrock-prompt-specifictoolchoice.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt ToolConfiguration
<a name="aws-properties-bedrock-prompt-toolconfiguration"></a>

Configuration information for the tools that you pass to a model. For more information, see [Tool use (function calling)](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-prompt-toolconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-toolconfiguration-syntax.json"></a>

```
{
  "[ToolChoice](#cfn-bedrock-prompt-toolconfiguration-toolchoice)" : ToolChoice,
  "[Tools](#cfn-bedrock-prompt-toolconfiguration-tools)" : [ Tool, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-prompt-toolconfiguration-syntax.yaml"></a>

```
  [ToolChoice](#cfn-bedrock-prompt-toolconfiguration-toolchoice): 
    ToolChoice
  [Tools](#cfn-bedrock-prompt-toolconfiguration-tools): 
    - Tool
```

## Properties
<a name="aws-properties-bedrock-prompt-toolconfiguration-properties"></a>

`ToolChoice`  <a name="cfn-bedrock-prompt-toolconfiguration-toolchoice"></a>
If supported by model, forces the model to request a tool.   
*Required*: No  
*Type*: [ToolChoice](aws-properties-bedrock-prompt-toolchoice.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tools`  <a name="cfn-bedrock-prompt-toolconfiguration-tools"></a>
An array of tools that you want to pass to a model.   
*Required*: Yes  
*Type*: Array of [Tool](aws-properties-bedrock-prompt-tool.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt ToolInputSchema
<a name="aws-properties-bedrock-prompt-toolinputschema"></a>

The schema for the tool. The top level schema type must be `object`. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-prompt-toolinputschema-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-toolinputschema-syntax.json"></a>

```
{
  "[Json](#cfn-bedrock-prompt-toolinputschema-json)" : Json
}
```

### YAML
<a name="aws-properties-bedrock-prompt-toolinputschema-syntax.yaml"></a>

```
  [Json](#cfn-bedrock-prompt-toolinputschema-json): 
    Json
```

## Properties
<a name="aws-properties-bedrock-prompt-toolinputschema-properties"></a>

`Json`  <a name="cfn-bedrock-prompt-toolinputschema-json"></a>
The JSON schema for the tool. For more information, see [JSON Schema Reference](https://json-schema.org/understanding-json-schema/reference).  
*Required*: Yes  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::Prompt ToolSpecification
<a name="aws-properties-bedrock-prompt-toolspecification"></a>

The specification for the tool. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-prompt-toolspecification-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-prompt-toolspecification-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-prompt-toolspecification-description)" : String,
  "[InputSchema](#cfn-bedrock-prompt-toolspecification-inputschema)" : ToolInputSchema,
  "[Name](#cfn-bedrock-prompt-toolspecification-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-prompt-toolspecification-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-prompt-toolspecification-description): String
  [InputSchema](#cfn-bedrock-prompt-toolspecification-inputschema): 
    ToolInputSchema
  [Name](#cfn-bedrock-prompt-toolspecification-name): String
```

## Properties
<a name="aws-properties-bedrock-prompt-toolspecification-properties"></a>

`Description`  <a name="cfn-bedrock-prompt-toolspecification-description"></a>
The description for the tool.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputSchema`  <a name="cfn-bedrock-prompt-toolspecification-inputschema"></a>
The input schema for the tool in JSON format.  
*Required*: Yes  
*Type*: [ToolInputSchema](aws-properties-bedrock-prompt-toolinputschema.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-prompt-toolspecification-name"></a>
The name for the tool.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z][a-zA-Z0-9_]*$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion
<a name="aws-resource-bedrock-promptversion"></a>

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](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-deploy.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-resource-bedrock-promptversion-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-promptversion-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::PromptVersion",
  "Properties" : {
      "[Description](#cfn-bedrock-promptversion-description)" : String,
      "[PromptArn](#cfn-bedrock-promptversion-promptarn)" : String,
      "[Tags](#cfn-bedrock-promptversion-tags)" : {Key: Value, ...}
    }
}
```

### YAML
<a name="aws-resource-bedrock-promptversion-syntax.yaml"></a>

```
Type: AWS::Bedrock::PromptVersion
Properties:
  [Description](#cfn-bedrock-promptversion-description): String
  [PromptArn](#cfn-bedrock-promptversion-promptarn): String
  [Tags](#cfn-bedrock-promptversion-tags): 
    Key: Value
```

## Properties
<a name="aws-resource-bedrock-promptversion-properties"></a>

`Description`  <a name="cfn-bedrock-promptversion-description"></a>
The description of the prompt version.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`PromptArn`  <a name="cfn-bedrock-promptversion-promptarn"></a>
The Amazon Resource Name (ARN) of the version of the prompt.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:prompt/[0-9a-zA-Z]{10})$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

`Tags`  <a name="cfn-bedrock-promptversion-tags"></a>
A map of tags attached to the prompt version and their values.  
*Required*: No  
*Type*: Object of String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `0`  
*Maximum*: `256`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-bedrock-promptversion-return-values"></a>

### Ref
<a name="aws-resource-bedrock-promptversion-return-values-ref"></a>

When you pass the logical ID of this resource to the intrinsic `Ref` function, `Ref` returns the Amazon Resource Number (ARN) of the prompt version.

For example, `{ "Ref": "myPromptVersion" }` could return the value `""arn:aws:bedrock:us-east-1:123456789012:prompt/PROMPT12345:1"`.

For more information about using the `Ref` function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-ref.html).

### Fn::GetAtt
<a name="aws-resource-bedrock-promptversion-return-values-fn--getatt"></a>

The `Fn::GetAtt` intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the `Fn::GetAtt` intrinsic function, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html).

#### 
<a name="aws-resource-bedrock-promptversion-return-values-fn--getatt-fn--getatt"></a>

`Arn`  <a name="Arn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the prompt or the prompt version (if you specified a version in the request).

`CreatedAt`  <a name="CreatedAt-fn::getatt"></a>
The time at which the prompt was created.

`CustomerEncryptionKeyArn`  <a name="CustomerEncryptionKeyArn-fn::getatt"></a>
The Amazon Resource Name (ARN) of the KMS key that the prompt version is encrypted with.

`DefaultVariant`  <a name="DefaultVariant-fn::getatt"></a>
The name of the default variant for the prompt. This value must match the `name` field in the relevant [PromptVariant](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_PromptVariant.html) object.

`Name`  <a name="Name-fn::getatt"></a>
The name of the prompt.

`PromptId`  <a name="PromptId-fn::getatt"></a>
The unique identifier of the prompt.

`UpdatedAt`  <a name="UpdatedAt-fn::getatt"></a>
The time at which the prompt was last updated.

`Variants`  <a name="Variants-fn::getatt"></a>
A list of objects, each containing details about a variant of the prompt.

`Version`  <a name="Version-fn::getatt"></a>
The version of the prompt that this summary applies to.

# AWS::Bedrock::PromptVersion CachePointBlock
<a name="aws-properties-bedrock-promptversion-cachepointblock"></a>

Defines a section of content to be cached for reuse in subsequent API calls.

## Syntax
<a name="aws-properties-bedrock-promptversion-cachepointblock-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-cachepointblock-syntax.json"></a>

```
{
  "[Type](#cfn-bedrock-promptversion-cachepointblock-type)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-cachepointblock-syntax.yaml"></a>

```
  [Type](#cfn-bedrock-promptversion-cachepointblock-type): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-cachepointblock-properties"></a>

`Type`  <a name="cfn-bedrock-promptversion-cachepointblock-type"></a>
Specifies the type of cache point within the CachePointBlock.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `default`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion ChatPromptTemplateConfiguration
<a name="aws-properties-bedrock-promptversion-chatprompttemplateconfiguration"></a>

Contains configurations to use a prompt in a conversational format. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-chatprompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-chatprompttemplateconfiguration-syntax.json"></a>

```
{
  "[InputVariables](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-inputvariables)" : [ PromptInputVariable, ... ],
  "[Messages](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-messages)" : [ Message, ... ],
  "[System](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-system)" : [ SystemContentBlock, ... ],
  "[ToolConfiguration](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-toolconfiguration)" : ToolConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-chatprompttemplateconfiguration-syntax.yaml"></a>

```
  [InputVariables](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-inputvariables): 
    - PromptInputVariable
  [Messages](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-messages): 
    - Message
  [System](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-system): 
    - SystemContentBlock
  [ToolConfiguration](#cfn-bedrock-promptversion-chatprompttemplateconfiguration-toolconfiguration): 
    ToolConfiguration
```

## Properties
<a name="aws-properties-bedrock-promptversion-chatprompttemplateconfiguration-properties"></a>

`InputVariables`  <a name="cfn-bedrock-promptversion-chatprompttemplateconfiguration-inputvariables"></a>
An array of the variables in the prompt template.  
*Required*: No  
*Type*: Array of [PromptInputVariable](aws-properties-bedrock-promptversion-promptinputvariable.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Messages`  <a name="cfn-bedrock-promptversion-chatprompttemplateconfiguration-messages"></a>
Contains messages in the chat for the prompt.  
*Required*: Yes  
*Type*: Array of [Message](aws-properties-bedrock-promptversion-message.md)  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`System`  <a name="cfn-bedrock-promptversion-chatprompttemplateconfiguration-system"></a>
Contains system prompts to provide context to the model or to describe how it should behave.  
*Required*: No  
*Type*: Array of [SystemContentBlock](aws-properties-bedrock-promptversion-systemcontentblock.md)  
*Minimum*: `0`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ToolConfiguration`  <a name="cfn-bedrock-promptversion-chatprompttemplateconfiguration-toolconfiguration"></a>
Configuration information for the tools that the model can use when generating a response.  
*Required*: No  
*Type*: [ToolConfiguration](aws-properties-bedrock-promptversion-toolconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion ContentBlock
<a name="aws-properties-bedrock-promptversion-contentblock"></a>

A block of content for a message that you pass to, or receive from, a model with the [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) or [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html) API operations.

## Syntax
<a name="aws-properties-bedrock-promptversion-contentblock-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-contentblock-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-promptversion-contentblock-cachepoint)" : CachePointBlock,
  "[Text](#cfn-bedrock-promptversion-contentblock-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-contentblock-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-promptversion-contentblock-cachepoint): 
    CachePointBlock
  [Text](#cfn-bedrock-promptversion-contentblock-text): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-contentblock-properties"></a>

`CachePoint`  <a name="cfn-bedrock-promptversion-contentblock-cachepoint"></a>
CachePoint to include in the message.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-promptversion-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-promptversion-contentblock-text"></a>
Text to include in the message.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion Message
<a name="aws-properties-bedrock-promptversion-message"></a>

A message input, or returned from, a call to [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) or [ConverseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_ConverseStream.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-message-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-message-syntax.json"></a>

```
{
  "[Content](#cfn-bedrock-promptversion-message-content)" : [ ContentBlock, ... ],
  "[Role](#cfn-bedrock-promptversion-message-role)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-message-syntax.yaml"></a>

```
  [Content](#cfn-bedrock-promptversion-message-content): 
    - ContentBlock
  [Role](#cfn-bedrock-promptversion-message-role): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-message-properties"></a>

`Content`  <a name="cfn-bedrock-promptversion-message-content"></a>
The message content. Note the following restrictions:  
+ You can include up to 20 images. Each image's size, height, and width must be no more than 3.75 MB, 8000 px, and 8000 px, respectively.
+ You can include up to five documents. Each document's size must be no more than 4.5 MB.
+ If you include a `ContentBlock` with a `document` field in the array, you must also include a `ContentBlock` with a `text` field.
+ You can only include images and documents if the `role` is `user`.
*Required*: Yes  
*Type*: Array of [ContentBlock](aws-properties-bedrock-promptversion-contentblock.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Role`  <a name="cfn-bedrock-promptversion-message-role"></a>
The role that the message plays in the message.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `user | assistant`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptAgentResource
<a name="aws-properties-bedrock-promptversion-promptagentresource"></a>

Contains specifications for an Amazon Bedrock agent with which to use the prompt. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html) and [Automate tasks in your application using conversational agents](https://docs.aws.amazon.com/bedrock/latest/userguide/agents.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-promptagentresource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptagentresource-syntax.json"></a>

```
{
  "[AgentIdentifier](#cfn-bedrock-promptversion-promptagentresource-agentidentifier)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptagentresource-syntax.yaml"></a>

```
  [AgentIdentifier](#cfn-bedrock-promptversion-promptagentresource-agentidentifier): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptagentresource-properties"></a>

`AgentIdentifier`  <a name="cfn-bedrock-promptversion-promptagentresource-agentidentifier"></a>
The ARN of the agent with which to use the prompt.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[^:]+)?:bedrock:[a-z0-9-]{1,20}:[0-9]{12}:agent-alias/[0-9a-zA-Z]{10}/[0-9a-zA-Z]{10}$`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptGenAiResource
<a name="aws-properties-bedrock-promptversion-promptgenairesource"></a>

Contains specifications for a generative AI resource with which to use the prompt. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-promptgenairesource-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptgenairesource-syntax.json"></a>

```
{
  "[Agent](#cfn-bedrock-promptversion-promptgenairesource-agent)" : PromptAgentResource
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptgenairesource-syntax.yaml"></a>

```
  [Agent](#cfn-bedrock-promptversion-promptgenairesource-agent): 
    PromptAgentResource
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptgenairesource-properties"></a>

`Agent`  <a name="cfn-bedrock-promptversion-promptgenairesource-agent"></a>
Specifies an Amazon Bedrock agent with which to use the prompt.  
*Required*: Yes  
*Type*: [PromptAgentResource](aws-properties-bedrock-promptversion-promptagentresource.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptInferenceConfiguration
<a name="aws-properties-bedrock-promptversion-promptinferenceconfiguration"></a>

Contains inference configurations for the prompt.

## Syntax
<a name="aws-properties-bedrock-promptversion-promptinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptinferenceconfiguration-syntax.json"></a>

```
{
  "[Text](#cfn-bedrock-promptversion-promptinferenceconfiguration-text)" : PromptModelInferenceConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptinferenceconfiguration-syntax.yaml"></a>

```
  [Text](#cfn-bedrock-promptversion-promptinferenceconfiguration-text): 
    PromptModelInferenceConfiguration
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptinferenceconfiguration-properties"></a>

`Text`  <a name="cfn-bedrock-promptversion-promptinferenceconfiguration-text"></a>
Contains inference configurations for a text prompt.  
*Required*: Yes  
*Type*: [PromptModelInferenceConfiguration](aws-properties-bedrock-promptversion-promptmodelinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptInputVariable
<a name="aws-properties-bedrock-promptversion-promptinputvariable"></a>

Contains information about a variable in the prompt.

## Syntax
<a name="aws-properties-bedrock-promptversion-promptinputvariable-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptinputvariable-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-promptversion-promptinputvariable-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptinputvariable-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-promptversion-promptinputvariable-name): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptinputvariable-properties"></a>

`Name`  <a name="cfn-bedrock-promptversion-promptinputvariable-name"></a>
The name of the variable.  
*Required*: No  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptMetadataEntry
<a name="aws-properties-bedrock-promptversion-promptmetadataentry"></a>

Contains a key-value pair that defines a metadata tag and value to attach to a prompt variant. For more information, see [Create a prompt using Prompt management](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management-create.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-promptmetadataentry-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptmetadataentry-syntax.json"></a>

```
{
  "[Key](#cfn-bedrock-promptversion-promptmetadataentry-key)" : String,
  "[Value](#cfn-bedrock-promptversion-promptmetadataentry-value)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptmetadataentry-syntax.yaml"></a>

```
  [Key](#cfn-bedrock-promptversion-promptmetadataentry-key): String
  [Value](#cfn-bedrock-promptversion-promptmetadataentry-value): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptmetadataentry-properties"></a>

`Key`  <a name="cfn-bedrock-promptversion-promptmetadataentry-key"></a>
The key of a metadata tag for a prompt variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `128`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Value`  <a name="cfn-bedrock-promptversion-promptmetadataentry-value"></a>
The value of a metadata tag for a prompt variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z0-9\s._:/=+@-]*$`  
*Minimum*: `1`  
*Maximum*: `1024`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptModelInferenceConfiguration
<a name="aws-properties-bedrock-promptversion-promptmodelinferenceconfiguration"></a>

Contains inference configurations related to model inference for a prompt. For more information, see [Inference parameters](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-parameters.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-promptmodelinferenceconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptmodelinferenceconfiguration-syntax.json"></a>

```
{
  "[MaxTokens](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-maxtokens)" : Number,
  "[StopSequences](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-stopsequences)" : [ String, ... ],
  "[Temperature](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-temperature)" : Number,
  "[TopP](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-topp)" : Number
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptmodelinferenceconfiguration-syntax.yaml"></a>

```
  [MaxTokens](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-maxtokens): Number
  [StopSequences](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-stopsequences): 
    - String
  [Temperature](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-temperature): Number
  [TopP](#cfn-bedrock-promptversion-promptmodelinferenceconfiguration-topp): Number
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptmodelinferenceconfiguration-properties"></a>

`MaxTokens`  <a name="cfn-bedrock-promptversion-promptmodelinferenceconfiguration-maxtokens"></a>
The maximum number of tokens to return in the response.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `4096`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`StopSequences`  <a name="cfn-bedrock-promptversion-promptmodelinferenceconfiguration-stopsequences"></a>
A list of strings that define sequences after which the model will stop generating.  
*Required*: No  
*Type*: Array of String  
*Minimum*: `0`  
*Maximum*: `4`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Temperature`  <a name="cfn-bedrock-promptversion-promptmodelinferenceconfiguration-temperature"></a>
Controls the randomness of the response. Choose a lower value for more predictable outputs and a higher value for more surprising outputs.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TopP`  <a name="cfn-bedrock-promptversion-promptmodelinferenceconfiguration-topp"></a>
The percentage of most-likely candidates that the model considers for the next token.  
*Required*: No  
*Type*: Number  
*Minimum*: `0`  
*Maximum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptTemplateConfiguration
<a name="aws-properties-bedrock-promptversion-prompttemplateconfiguration"></a>

Contains the message for a prompt. For more information, see [Construct and store reusable prompts with Prompt management in Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/prompt-management.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-prompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-prompttemplateconfiguration-syntax.json"></a>

```
{
  "[Chat](#cfn-bedrock-promptversion-prompttemplateconfiguration-chat)" : ChatPromptTemplateConfiguration,
  "[Text](#cfn-bedrock-promptversion-prompttemplateconfiguration-text)" : TextPromptTemplateConfiguration
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-prompttemplateconfiguration-syntax.yaml"></a>

```
  [Chat](#cfn-bedrock-promptversion-prompttemplateconfiguration-chat): 
    ChatPromptTemplateConfiguration
  [Text](#cfn-bedrock-promptversion-prompttemplateconfiguration-text): 
    TextPromptTemplateConfiguration
```

## Properties
<a name="aws-properties-bedrock-promptversion-prompttemplateconfiguration-properties"></a>

`Chat`  <a name="cfn-bedrock-promptversion-prompttemplateconfiguration-chat"></a>
Contains configurations to use the prompt in a conversational format.  
*Required*: No  
*Type*: [ChatPromptTemplateConfiguration](aws-properties-bedrock-promptversion-chatprompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-promptversion-prompttemplateconfiguration-text"></a>
Contains configurations for the text in a message for a prompt.  
*Required*: No  
*Type*: [TextPromptTemplateConfiguration](aws-properties-bedrock-promptversion-textprompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion PromptVariant
<a name="aws-properties-bedrock-promptversion-promptvariant"></a>

Contains details about a variant of the prompt.

## Syntax
<a name="aws-properties-bedrock-promptversion-promptvariant-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-promptvariant-syntax.json"></a>

```
{
  "[AdditionalModelRequestFields](#cfn-bedrock-promptversion-promptvariant-additionalmodelrequestfields)" : Json,
  "[GenAiResource](#cfn-bedrock-promptversion-promptvariant-genairesource)" : PromptGenAiResource,
  "[InferenceConfiguration](#cfn-bedrock-promptversion-promptvariant-inferenceconfiguration)" : PromptInferenceConfiguration,
  "[Metadata](#cfn-bedrock-promptversion-promptvariant-metadata)" : [ PromptMetadataEntry, ... ],
  "[ModelId](#cfn-bedrock-promptversion-promptvariant-modelid)" : String,
  "[Name](#cfn-bedrock-promptversion-promptvariant-name)" : String,
  "[TemplateConfiguration](#cfn-bedrock-promptversion-promptvariant-templateconfiguration)" : PromptTemplateConfiguration,
  "[TemplateType](#cfn-bedrock-promptversion-promptvariant-templatetype)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-promptvariant-syntax.yaml"></a>

```
  [AdditionalModelRequestFields](#cfn-bedrock-promptversion-promptvariant-additionalmodelrequestfields): Json
  [GenAiResource](#cfn-bedrock-promptversion-promptvariant-genairesource): 
    PromptGenAiResource
  [InferenceConfiguration](#cfn-bedrock-promptversion-promptvariant-inferenceconfiguration): 
    PromptInferenceConfiguration
  [Metadata](#cfn-bedrock-promptversion-promptvariant-metadata): 
    - PromptMetadataEntry
  [ModelId](#cfn-bedrock-promptversion-promptvariant-modelid): String
  [Name](#cfn-bedrock-promptversion-promptvariant-name): String
  [TemplateConfiguration](#cfn-bedrock-promptversion-promptvariant-templateconfiguration): 
    PromptTemplateConfiguration
  [TemplateType](#cfn-bedrock-promptversion-promptvariant-templatetype): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-promptvariant-properties"></a>

`AdditionalModelRequestFields`  <a name="cfn-bedrock-promptversion-promptvariant-additionalmodelrequestfields"></a>
Contains model-specific inference configurations that aren't in the `inferenceConfiguration` field. To see model-specific inference parameters, see [Inference request parameters and response fields for foundation models](https://docs.aws.amazon.com/bedrock/latest/userguide/model-parameters.html).  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`GenAiResource`  <a name="cfn-bedrock-promptversion-promptvariant-genairesource"></a>
Specifies a generative AI resource with which to use the prompt.  
*Required*: No  
*Type*: [PromptGenAiResource](aws-properties-bedrock-promptversion-promptgenairesource.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InferenceConfiguration`  <a name="cfn-bedrock-promptversion-promptvariant-inferenceconfiguration"></a>
Contains inference configurations for the prompt variant.  
*Required*: No  
*Type*: [PromptInferenceConfiguration](aws-properties-bedrock-promptversion-promptinferenceconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Metadata`  <a name="cfn-bedrock-promptversion-promptvariant-metadata"></a>
An array of objects, each containing a key-value pair that defines a metadata tag and value to attach to a prompt variant.  
*Required*: No  
*Type*: Array of [PromptMetadataEntry](aws-properties-bedrock-promptversion-promptmetadataentry.md)  
*Minimum*: `0`  
*Maximum*: `50`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ModelId`  <a name="cfn-bedrock-promptversion-promptvariant-modelid"></a>
The unique identifier of the model or [inference profile](https://docs.aws.amazon.com/bedrock/latest/userguide/cross-region-inference.html) with which to run inference on the prompt.  
*Required*: No  
*Type*: String  
*Pattern*: `^(arn:aws(-[^:]{1,12})?:(bedrock|sagemaker):[a-z0-9-]{1,20}:([0-9]{12})?:([a-z-]+/)?)?([a-zA-Z0-9.-]{1,63}){0,2}(([:][a-z0-9-]{1,63}){0,2})?(/[a-z0-9]{1,12})?$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-promptversion-promptvariant-name"></a>
The name of the prompt variant.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^([0-9a-zA-Z][_-]?){1,100}$`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateConfiguration`  <a name="cfn-bedrock-promptversion-promptvariant-templateconfiguration"></a>
Contains configurations for the prompt template.  
*Required*: Yes  
*Type*: [PromptTemplateConfiguration](aws-properties-bedrock-promptversion-prompttemplateconfiguration.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`TemplateType`  <a name="cfn-bedrock-promptversion-promptvariant-templatetype"></a>
The type of prompt template to use.  
*Required*: Yes  
*Type*: String  
*Allowed values*: `TEXT | CHAT`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion SpecificToolChoice
<a name="aws-properties-bedrock-promptversion-specifictoolchoice"></a>

The model must request a specific tool. For example, `{"tool" : {"name" : "Your tool name"}}`. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide

**Note**  
This field is only supported by Anthropic Claude 3 models.

## Syntax
<a name="aws-properties-bedrock-promptversion-specifictoolchoice-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-specifictoolchoice-syntax.json"></a>

```
{
  "[Name](#cfn-bedrock-promptversion-specifictoolchoice-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-specifictoolchoice-syntax.yaml"></a>

```
  [Name](#cfn-bedrock-promptversion-specifictoolchoice-name): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-specifictoolchoice-properties"></a>

`Name`  <a name="cfn-bedrock-promptversion-specifictoolchoice-name"></a>
The name of the tool that the model must request.   
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z][a-zA-Z0-9_]*$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion SystemContentBlock
<a name="aws-properties-bedrock-promptversion-systemcontentblock"></a>

Contains configurations for instructions to provide the model for how to handle input. To learn more, see [Using the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/conversation-inference-call.html).

## Syntax
<a name="aws-properties-bedrock-promptversion-systemcontentblock-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-systemcontentblock-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-promptversion-systemcontentblock-cachepoint)" : CachePointBlock,
  "[Text](#cfn-bedrock-promptversion-systemcontentblock-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-systemcontentblock-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-promptversion-systemcontentblock-cachepoint): 
    CachePointBlock
  [Text](#cfn-bedrock-promptversion-systemcontentblock-text): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-systemcontentblock-properties"></a>

`CachePoint`  <a name="cfn-bedrock-promptversion-systemcontentblock-cachepoint"></a>
CachePoint to include in the system prompt.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-promptversion-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-promptversion-systemcontentblock-text"></a>
A system prompt for the model.   
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion TextPromptTemplateConfiguration
<a name="aws-properties-bedrock-promptversion-textprompttemplateconfiguration"></a>

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

## Syntax
<a name="aws-properties-bedrock-promptversion-textprompttemplateconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-textprompttemplateconfiguration-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-promptversion-textprompttemplateconfiguration-cachepoint)" : CachePointBlock,
  "[InputVariables](#cfn-bedrock-promptversion-textprompttemplateconfiguration-inputvariables)" : [ PromptInputVariable, ... ],
  "[Text](#cfn-bedrock-promptversion-textprompttemplateconfiguration-text)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-textprompttemplateconfiguration-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-promptversion-textprompttemplateconfiguration-cachepoint): 
    CachePointBlock
  [InputVariables](#cfn-bedrock-promptversion-textprompttemplateconfiguration-inputvariables): 
    - PromptInputVariable
  [Text](#cfn-bedrock-promptversion-textprompttemplateconfiguration-text): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-textprompttemplateconfiguration-properties"></a>

`CachePoint`  <a name="cfn-bedrock-promptversion-textprompttemplateconfiguration-cachepoint"></a>
A cache checkpoint within a template configuration.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-promptversion-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputVariables`  <a name="cfn-bedrock-promptversion-textprompttemplateconfiguration-inputvariables"></a>
An array of the variables in the prompt template.  
*Required*: No  
*Type*: Array of [PromptInputVariable](aws-properties-bedrock-promptversion-promptinputvariable.md)  
*Minimum*: `0`  
*Maximum*: `20`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Text`  <a name="cfn-bedrock-promptversion-textprompttemplateconfiguration-text"></a>
The message for the prompt.  
*Required*: Yes  
*Type*: String  
*Minimum*: `1`  
*Maximum*: `200000`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion Tool
<a name="aws-properties-bedrock-promptversion-tool"></a>

Information about a tool that you can use with the Converse API. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-promptversion-tool-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-tool-syntax.json"></a>

```
{
  "[CachePoint](#cfn-bedrock-promptversion-tool-cachepoint)" : CachePointBlock,
  "[ToolSpec](#cfn-bedrock-promptversion-tool-toolspec)" : ToolSpecification
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-tool-syntax.yaml"></a>

```
  [CachePoint](#cfn-bedrock-promptversion-tool-cachepoint): 
    CachePointBlock
  [ToolSpec](#cfn-bedrock-promptversion-tool-toolspec): 
    ToolSpecification
```

## Properties
<a name="aws-properties-bedrock-promptversion-tool-properties"></a>

`CachePoint`  <a name="cfn-bedrock-promptversion-tool-cachepoint"></a>
CachePoint to include in the tool configuration.  
*Required*: No  
*Type*: [CachePointBlock](aws-properties-bedrock-promptversion-cachepointblock.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ToolSpec`  <a name="cfn-bedrock-promptversion-tool-toolspec"></a>
The specfication for the tool.   
*Required*: No  
*Type*: [ToolSpecification](aws-properties-bedrock-promptversion-toolspecification.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion ToolChoice
<a name="aws-properties-bedrock-promptversion-toolchoice"></a>

Determines which tools the model should request in a call to `Converse` or `ConverseStream`. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-promptversion-toolchoice-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-toolchoice-syntax.json"></a>

```
{
  "[Any](#cfn-bedrock-promptversion-toolchoice-any)" : Json,
  "[Auto](#cfn-bedrock-promptversion-toolchoice-auto)" : Json,
  "[Tool](#cfn-bedrock-promptversion-toolchoice-tool)" : SpecificToolChoice
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-toolchoice-syntax.yaml"></a>

```
  [Any](#cfn-bedrock-promptversion-toolchoice-any): Json
  [Auto](#cfn-bedrock-promptversion-toolchoice-auto): Json
  [Tool](#cfn-bedrock-promptversion-toolchoice-tool): 
    SpecificToolChoice
```

## Properties
<a name="aws-properties-bedrock-promptversion-toolchoice-properties"></a>

`Any`  <a name="cfn-bedrock-promptversion-toolchoice-any"></a>
The model must request at least one tool (no text is generated).  
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Auto`  <a name="cfn-bedrock-promptversion-toolchoice-auto"></a>
(Default). The Model automatically decides if a tool should be called or whether to generate text instead.   
*Required*: No  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tool`  <a name="cfn-bedrock-promptversion-toolchoice-tool"></a>
The Model must request the specified tool. Only supported by Anthropic Claude 3 and Amazon Nova models.   
*Required*: No  
*Type*: [SpecificToolChoice](aws-properties-bedrock-promptversion-specifictoolchoice.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion ToolConfiguration
<a name="aws-properties-bedrock-promptversion-toolconfiguration"></a>

Configuration information for the tools that you pass to a model. For more information, see [Tool use (function calling)](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-promptversion-toolconfiguration-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-toolconfiguration-syntax.json"></a>

```
{
  "[ToolChoice](#cfn-bedrock-promptversion-toolconfiguration-toolchoice)" : ToolChoice,
  "[Tools](#cfn-bedrock-promptversion-toolconfiguration-tools)" : [ Tool, ... ]
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-toolconfiguration-syntax.yaml"></a>

```
  [ToolChoice](#cfn-bedrock-promptversion-toolconfiguration-toolchoice): 
    ToolChoice
  [Tools](#cfn-bedrock-promptversion-toolconfiguration-tools): 
    - Tool
```

## Properties
<a name="aws-properties-bedrock-promptversion-toolconfiguration-properties"></a>

`ToolChoice`  <a name="cfn-bedrock-promptversion-toolconfiguration-toolchoice"></a>
If supported by model, forces the model to request a tool.   
*Required*: No  
*Type*: [ToolChoice](aws-properties-bedrock-promptversion-toolchoice.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Tools`  <a name="cfn-bedrock-promptversion-toolconfiguration-tools"></a>
An array of tools that you want to pass to a model.   
*Required*: Yes  
*Type*: Array of [Tool](aws-properties-bedrock-promptversion-tool.md)  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion ToolInputSchema
<a name="aws-properties-bedrock-promptversion-toolinputschema"></a>

The schema for the tool. The top level schema type must be `object`. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-promptversion-toolinputschema-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-toolinputschema-syntax.json"></a>

```
{
  "[Json](#cfn-bedrock-promptversion-toolinputschema-json)" : Json
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-toolinputschema-syntax.yaml"></a>

```
  [Json](#cfn-bedrock-promptversion-toolinputschema-json): 
    Json
```

## Properties
<a name="aws-properties-bedrock-promptversion-toolinputschema-properties"></a>

`Json`  <a name="cfn-bedrock-promptversion-toolinputschema-json"></a>
The JSON schema for the tool. For more information, see [JSON Schema Reference](https://json-schema.org/understanding-json-schema/reference).  
*Required*: Yes  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::PromptVersion ToolSpecification
<a name="aws-properties-bedrock-promptversion-toolspecification"></a>

The specification for the tool. For more information, see [Call a tool with the Converse API](https://docs.aws.amazon.com/bedrock/latest/userguide/tool-use.html) in the Amazon Bedrock User Guide.

## Syntax
<a name="aws-properties-bedrock-promptversion-toolspecification-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-properties-bedrock-promptversion-toolspecification-syntax.json"></a>

```
{
  "[Description](#cfn-bedrock-promptversion-toolspecification-description)" : String,
  "[InputSchema](#cfn-bedrock-promptversion-toolspecification-inputschema)" : ToolInputSchema,
  "[Name](#cfn-bedrock-promptversion-toolspecification-name)" : String
}
```

### YAML
<a name="aws-properties-bedrock-promptversion-toolspecification-syntax.yaml"></a>

```
  [Description](#cfn-bedrock-promptversion-toolspecification-description): String
  [InputSchema](#cfn-bedrock-promptversion-toolspecification-inputschema): 
    ToolInputSchema
  [Name](#cfn-bedrock-promptversion-toolspecification-name): String
```

## Properties
<a name="aws-properties-bedrock-promptversion-toolspecification-properties"></a>

`Description`  <a name="cfn-bedrock-promptversion-toolspecification-description"></a>
The description for the tool.  
*Required*: No  
*Type*: String  
*Minimum*: `1`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`InputSchema`  <a name="cfn-bedrock-promptversion-toolspecification-inputschema"></a>
The input schema for the tool in JSON format.  
*Required*: Yes  
*Type*: [ToolInputSchema](aws-properties-bedrock-promptversion-toolinputschema.md)  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`Name`  <a name="cfn-bedrock-promptversion-toolspecification-name"></a>
The name for the tool.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^[a-zA-Z][a-zA-Z0-9_]*$`  
*Minimum*: `1`  
*Maximum*: `64`  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

# AWS::Bedrock::ResourcePolicy
<a name="aws-resource-bedrock-resourcepolicy"></a>

Adds a resource policy for a Bedrock resource.

## Syntax
<a name="aws-resource-bedrock-resourcepolicy-syntax"></a>

To declare this entity in your CloudFormation template, use the following syntax:

### JSON
<a name="aws-resource-bedrock-resourcepolicy-syntax.json"></a>

```
{
  "Type" : "AWS::Bedrock::ResourcePolicy",
  "Properties" : {
      "[PolicyDocument](#cfn-bedrock-resourcepolicy-policydocument)" : Json,
      "[ResourceArn](#cfn-bedrock-resourcepolicy-resourcearn)" : String
    }
}
```

### YAML
<a name="aws-resource-bedrock-resourcepolicy-syntax.yaml"></a>

```
Type: AWS::Bedrock::ResourcePolicy
Properties:
  [PolicyDocument](#cfn-bedrock-resourcepolicy-policydocument): Json
  [ResourceArn](#cfn-bedrock-resourcepolicy-resourcearn): String
```

## Properties
<a name="aws-resource-bedrock-resourcepolicy-properties"></a>

`PolicyDocument`  <a name="cfn-bedrock-resourcepolicy-policydocument"></a>
The JSON string representing the Bedrock resource policy.  
*Required*: Yes  
*Type*: Json  
*Update requires*: [No interruption](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt)

`ResourceArn`  <a name="cfn-bedrock-resourcepolicy-resourcearn"></a>
The ARN of the Bedrock resource to which this resource policy applies.  
*Required*: Yes  
*Type*: String  
*Pattern*: `^arn:aws(-[a-z]+)*:bedrock:[a-z0-9-]+:[0-9]{12}:(guardrail|guardrail-profile)/[a-z0-9]+$`  
*Minimum*: `1`  
*Maximum*: `2048`  
*Update requires*: [Replacement](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement)

## Return values
<a name="aws-resource-bedrock-resourcepolicy-return-values"></a>

### Ref
<a name="aws-resource-bedrock-resourcepolicy-return-values-ref"></a>