

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).

# 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)