BedrockAgentCoreControl / Client / create_memory
create_memory¶
- BedrockAgentCoreControl.Client.create_memory(**kwargs)¶
Creates a new Amazon Bedrock AgentCore Memory resource.
See also: AWS API Documentation
Request Syntax
response = client.create_memory( clientToken='string', name='string', description='string', encryptionKeyArn='string', memoryExecutionRoleArn='string', eventExpiryDuration=123, memoryStrategies=[ { 'semanticMemoryStrategy': { 'name': 'string', 'description': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] }, 'recordExpirySpecification': { 'recordExpiryDurationDays': 123, 'action': 'REMOVE' } }, 'summaryMemoryStrategy': { 'name': 'string', 'description': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] }, 'recordExpirySpecification': { 'recordExpiryDurationDays': 123, 'action': 'REMOVE' } }, 'userPreferenceMemoryStrategy': { 'name': 'string', 'description': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] }, 'recordExpirySpecification': { 'recordExpiryDurationDays': 123, 'action': 'REMOVE' } }, 'customMemoryStrategy': { 'name': 'string', 'description': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'configuration': { 'semanticOverride': { 'extraction': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'consolidation': { 'appendToPrompt': 'string', 'modelId': 'string' } }, 'summaryOverride': { 'consolidation': { 'appendToPrompt': 'string', 'modelId': 'string' } }, 'userPreferenceOverride': { 'extraction': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'consolidation': { 'appendToPrompt': 'string', 'modelId': 'string' } }, 'episodicOverride': { 'extraction': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'consolidation': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'reflection': { 'appendToPrompt': 'string', 'modelId': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] } } }, 'selfManagedConfiguration': { 'triggerConditions': [ { 'messageBasedTrigger': { 'messageCount': 123 }, 'tokenBasedTrigger': { 'tokenCount': 123 }, 'timeBasedTrigger': { 'idleSessionTimeout': 123 } }, ], 'invocationConfiguration': { 'topicArn': 'string', 'payloadDeliveryBucketName': 'string' }, 'historicalContextWindowSize': 123 } }, 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] }, 'recordExpirySpecification': { 'recordExpiryDurationDays': 123, 'action': 'REMOVE' } }, 'episodicMemoryStrategy': { 'name': 'string', 'description': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'reflectionConfiguration': { 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] } }, 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] }, 'recordExpirySpecification': { 'recordExpiryDurationDays': 123, 'action': 'REMOVE' } } }, ], indexedKeys=[ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER' }, ], namespaceKeys=[ { 'key': 'string', 'validation': { 'allowedValues': [ 'string', ], 'regexPattern': 'string' } }, ], streamDeliveryResources={ 'resources': [ { 'kinesis': { 'dataStreamArn': 'string', 'contentConfigurations': [ { 'type': 'MEMORY_RECORDS', 'level': 'METADATA_ONLY'|'FULL_CONTENT' }, ] } }, ] }, tags={ 'string': 'string' } )
- Parameters:
clientToken (string) –
A unique, case-sensitive identifier to ensure that the operation completes no more than one time. If this token matches a previous request, Amazon Bedrock ignores the request but does not return an error.
This field is autopopulated if not provided.
name (string) –
[REQUIRED]
The name of the memory. The name must be unique within your account.
description (string) – The description of the memory.
encryptionKeyArn (string) – The Amazon Resource Name (ARN) of the KMS key used to encrypt the memory data.
memoryExecutionRoleArn (string) – The Amazon Resource Name (ARN) of the IAM role that provides permissions for the memory to access Amazon Web Services services.
eventExpiryDuration (integer) –
[REQUIRED]
The duration after which memory events expire. Specified as an ISO 8601 duration.
memoryStrategies (list) –
The memory strategies to use for this memory. Strategies define how information is extracted, processed, and consolidated.
(dict) –
Contains input information for creating a memory strategy.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
semanticMemoryStrategy,summaryMemoryStrategy,userPreferenceMemoryStrategy,customMemoryStrategy,episodicMemoryStrategy.semanticMemoryStrategy (dict) –
Input for creating a semantic memory strategy.
name (string) – [REQUIRED]
The name of the semantic memory strategy.
description (string) –
The description of the semantic memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces associated with the semantic memory strategy.(string) –
namespaceTemplates (list) –
The namespaceTemplates associated with the semantic memory strategy.
(string) –
memoryRecordSchema (dict) –
Schema for metadata on memory records generated by a strategy.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
recordExpirySpecification (dict) –
The record expiry (long-term memory time-to-live) configuration for memory records generated by this strategy. Set
recordExpiryDurationDaysto the number of days after which records expire. If not specified, records generated by this strategy do not expire.Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
recordExpiryDurationDays,action.recordExpiryDurationDays (integer) –
The duration, in days, after which memory records generated by this strategy expire. The minimum is 31 days.
action (string) –
The action to apply to the existing record expiry (long-term memory time-to-live) configuration. Set to
REMOVEto remove a previously configured time-to-live so that newer records no longer expire. This value is not applicable on create paths.
summaryMemoryStrategy (dict) –
Input for creating a summary memory strategy.
name (string) – [REQUIRED]
The name of the summary memory strategy.
description (string) –
The description of the summary memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces associated with the summary memory strategy.(string) –
namespaceTemplates (list) –
The namespaceTemplates associated with the summary memory strategy.
(string) –
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this strategy.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
recordExpirySpecification (dict) –
The record expiry (long-term memory time-to-live) configuration for memory records generated by this strategy. Set
recordExpiryDurationDaysto the number of days after which records expire. If not specified, records generated by this strategy do not expire.Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
recordExpiryDurationDays,action.recordExpiryDurationDays (integer) –
The duration, in days, after which memory records generated by this strategy expire. The minimum is 31 days.
action (string) –
The action to apply to the existing record expiry (long-term memory time-to-live) configuration. Set to
REMOVEto remove a previously configured time-to-live so that newer records no longer expire. This value is not applicable on create paths.
userPreferenceMemoryStrategy (dict) –
Input for creating a user preference memory strategy.
name (string) – [REQUIRED]
The name of the user preference memory strategy.
description (string) –
The description of the user preference memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces associated with the user preference memory strategy.(string) –
namespaceTemplates (list) –
The namespaceTemplates associated with the user preference memory strategy.
(string) –
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this strategy.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
recordExpirySpecification (dict) –
The record expiry (long-term memory time-to-live) configuration for memory records generated by this strategy. Set
recordExpiryDurationDaysto the number of days after which records expire. If not specified, records generated by this strategy do not expire.Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
recordExpiryDurationDays,action.recordExpiryDurationDays (integer) –
The duration, in days, after which memory records generated by this strategy expire. The minimum is 31 days.
action (string) –
The action to apply to the existing record expiry (long-term memory time-to-live) configuration. Set to
REMOVEto remove a previously configured time-to-live so that newer records no longer expire. This value is not applicable on create paths.
customMemoryStrategy (dict) –
Input for creating a custom memory strategy.
name (string) – [REQUIRED]
The name of the custom memory strategy.
description (string) –
The description of the custom memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces associated with the custom memory strategy.(string) –
namespaceTemplates (list) –
The namespaceTemplates associated with the custom memory strategy.
(string) –
configuration (dict) –
The configuration for the custom memory strategy.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
semanticOverride,summaryOverride,userPreferenceOverride,episodicOverride,selfManagedConfiguration.semanticOverride (dict) –
The semantic override configuration for a custom memory strategy.
extraction (dict) –
The extraction configuration for a semantic override.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for semantic extraction.
modelId (string) – [REQUIRED]
The model ID to use for semantic extraction.
consolidation (dict) –
The consolidation configuration for a semantic override.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for semantic consolidation.
modelId (string) – [REQUIRED]
The model ID to use for semantic consolidation.
summaryOverride (dict) –
The summary override configuration for a custom memory strategy.
consolidation (dict) –
The consolidation configuration for a summary override.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for summary consolidation.
modelId (string) – [REQUIRED]
The model ID to use for summary consolidation.
userPreferenceOverride (dict) –
The user preference override configuration for a custom memory strategy.
extraction (dict) –
The extraction configuration for a user preference override.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for user preference extraction.
modelId (string) – [REQUIRED]
The model ID to use for user preference extraction.
consolidation (dict) –
The consolidation configuration for a user preference override.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for user preference consolidation.
modelId (string) – [REQUIRED]
The model ID to use for user preference consolidation.
episodicOverride (dict) –
The episodic memory strategy override configuration for a custom memory strategy.
extraction (dict) –
Contains configurations for overriding the extraction step of the episodic memory strategy.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for the extraction step of the episodic memory strategy.
modelId (string) – [REQUIRED]
The model ID to use for the extraction step of the episodic memory strategy.
consolidation (dict) –
Contains configurations for overriding the consolidation step of the episodic memory strategy.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for the consolidation step of the episodic memory strategy.
modelId (string) – [REQUIRED]
The model ID to use for the consolidation step of the episodic memory strategy.
reflection (dict) –
Contains configurations for overriding the reflection step of the episodic memory strategy.
appendToPrompt (string) – [REQUIRED]
The text to append to the prompt for reflection step of the episodic memory strategy.
modelId (string) – [REQUIRED]
The model ID to use for the reflection step of the episodic memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces to use for episodic reflection. Can be less nested than the episodic namespaces.(string) –
namespaceTemplates (list) –
The namespaceTemplates to use for episodic reflection. Can be less nested than the episodic namespaces.
(string) –
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this reflection override.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
selfManagedConfiguration (dict) –
The self managed configuration for a custom memory strategy.
triggerConditions (list) –
A list of conditions that trigger memory processing.
(dict) –
Condition that triggers memory processing.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
messageBasedTrigger,tokenBasedTrigger,timeBasedTrigger.messageBasedTrigger (dict) –
Message based trigger configuration.
messageCount (integer) –
The number of messages that trigger memory processing.
tokenBasedTrigger (dict) –
Token based trigger configuration.
tokenCount (integer) –
Number of tokens that trigger memory processing.
timeBasedTrigger (dict) –
Time based trigger configuration.
idleSessionTimeout (integer) –
Idle session timeout (seconds) that triggers memory processing.
invocationConfiguration (dict) – [REQUIRED]
Configuration to invoke a self-managed memory processing pipeline with.
topicArn (string) – [REQUIRED]
The ARN of the SNS topic for job notifications.
payloadDeliveryBucketName (string) – [REQUIRED]
The S3 bucket name for event payload delivery.
historicalContextWindowSize (integer) –
Number of historical messages to include in processing context.
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this strategy.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
recordExpirySpecification (dict) –
The record expiry (long-term memory time-to-live) configuration for memory records generated by this strategy. Set
recordExpiryDurationDaysto the number of days after which records expire. If not specified, records generated by this strategy do not expire.Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
recordExpiryDurationDays,action.recordExpiryDurationDays (integer) –
The duration, in days, after which memory records generated by this strategy expire. The minimum is 31 days.
action (string) –
The action to apply to the existing record expiry (long-term memory time-to-live) configuration. Set to
REMOVEto remove a previously configured time-to-live so that newer records no longer expire. This value is not applicable on create paths.
episodicMemoryStrategy (dict) –
Input for creating an episodic memory strategy
name (string) – [REQUIRED]
The name of the episodic memory strategy.
description (string) –
The description of the episodic memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces for which to create episodes.(string) –
namespaceTemplates (list) –
The namespaceTemplates for which to create episodes.
(string) –
reflectionConfiguration (dict) –
The configuration for the reflections created with the episodic memory strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces over which to create reflections. Can be less nested than episode namespaces.(string) –
namespaceTemplates (list) –
The namespaceTemplates over which to create reflections. Can be less nested than episode namespaces.
(string) –
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by reflections.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this strategy.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) – [REQUIRED]
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
llmExtractionConfig.llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) – [REQUIRED]
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
stringValidation,stringListValidation,numberValidation.stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) – [REQUIRED]
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
recordExpirySpecification (dict) –
The record expiry (long-term memory time-to-live) configuration for memory records generated by this strategy. Set
recordExpiryDurationDaysto the number of days after which records expire. If not specified, records generated by this strategy do not expire.Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
recordExpiryDurationDays,action.recordExpiryDurationDays (integer) –
The duration, in days, after which memory records generated by this strategy expire. The minimum is 31 days.
action (string) –
The action to apply to the existing record expiry (long-term memory time-to-live) configuration. Set to
REMOVEto remove a previously configured time-to-live so that newer records no longer expire. This value is not applicable on create paths.
indexedKeys (list) –
Metadata keys to index for filtering. Once declared, indexed keys cannot be removed.
(dict) –
A metadata key indexed for filtering.
key (string) – [REQUIRED]
The metadata key name to index.
type (string) – [REQUIRED]
The data type of the indexed key.
namespaceKeys (list) –
The namespace variable key definitions with optional validation rules. Use these
namespaceKeysinnamespaceTemplatesto control namespace hierarchy.(dict) –
A namespace variable key definition with optional
NamespaceKeyValidationrules.key (string) – [REQUIRED]
The namespace variable key name.
validation (dict) –
The validation rules that constrain values for this namespace variable at runtime (
CreateEventAPI).allowedValues (list) –
The allowed values for this namespace variable key.
(string) –
regexPattern (string) –
A regex pattern that the namespace variable key-value must match.
streamDeliveryResources (dict) –
Configuration for streaming memory record data to external resources.
resources (list) – [REQUIRED]
List of stream delivery resource configurations.
(dict) –
Supported stream delivery resource types.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
kinesis.kinesis (dict) –
Kinesis Data Stream configuration.
dataStreamArn (string) – [REQUIRED]
ARN of the Kinesis Data Stream.
contentConfigurations (list) – [REQUIRED]
Content configurations for stream delivery.
(dict) –
Defines what content to stream and at what level of detail.
type (string) – [REQUIRED]
Type of content to stream.
level (string) –
Level of detail for streamed content.
tags (dict) –
A map of tag keys and values to assign to an AgentCore Memory. Tags enable you to categorize your resources in different ways, for example, by purpose, owner, or environment.
(string) –
(string) –
- Return type:
dict
- Returns:
Response Syntax
{ 'memory': { 'arn': 'string', 'id': 'string', 'name': 'string', 'description': 'string', 'encryptionKeyArn': 'string', 'memoryExecutionRoleArn': 'string', 'eventExpiryDuration': 123, 'status': 'CREATING'|'ACTIVE'|'FAILED'|'DELETING'|'UPDATING', 'failureReason': 'string', 'createdAt': datetime(2015, 1, 1), 'updatedAt': datetime(2015, 1, 1), 'strategies': [ { 'strategyId': 'string', 'name': 'string', 'description': 'string', 'configuration': { 'type': 'SEMANTIC_OVERRIDE'|'SUMMARY_OVERRIDE'|'USER_PREFERENCE_OVERRIDE'|'SELF_MANAGED'|'EPISODIC_OVERRIDE', 'extraction': { 'customExtractionConfiguration': { 'semanticExtractionOverride': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'userPreferenceExtractionOverride': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'episodicExtractionOverride': { 'appendToPrompt': 'string', 'modelId': 'string' } } }, 'consolidation': { 'customConsolidationConfiguration': { 'semanticConsolidationOverride': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'summaryConsolidationOverride': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'userPreferenceConsolidationOverride': { 'appendToPrompt': 'string', 'modelId': 'string' }, 'episodicConsolidationOverride': { 'appendToPrompt': 'string', 'modelId': 'string' } } }, 'reflection': { 'customReflectionConfiguration': { 'episodicReflectionOverride': { 'appendToPrompt': 'string', 'modelId': 'string', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] } } }, 'episodicReflectionConfiguration': { 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] } } }, 'selfManagedConfiguration': { 'triggerConditions': [ { 'messageBasedTrigger': { 'messageCount': 123 }, 'tokenBasedTrigger': { 'tokenCount': 123 }, 'timeBasedTrigger': { 'idleSessionTimeout': 123 } }, ], 'invocationConfiguration': { 'topicArn': 'string', 'payloadDeliveryBucketName': 'string' }, 'historicalContextWindowSize': 123 } }, 'type': 'SEMANTIC'|'SUMMARIZATION'|'USER_PREFERENCE'|'CUSTOM'|'EPISODIC', 'namespaces': [ 'string', ], 'namespaceTemplates': [ 'string', ], 'createdAt': datetime(2015, 1, 1), 'updatedAt': datetime(2015, 1, 1), 'status': 'CREATING'|'ACTIVE'|'DELETING'|'FAILED', 'memoryRecordSchema': { 'metadataSchema': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER', 'extractionType': 'LLM_INFERRED'|'STRICTLY_CONSISTENT', 'extractionConfig': { 'llmExtractionConfig': { 'llmExtractionInstruction': 'string', 'definition': 'string', 'validation': { 'stringValidation': { 'allowedValues': [ 'string', ] }, 'stringListValidation': { 'allowedValues': [ 'string', ], 'maxItems': 123 }, 'numberValidation': { 'minValue': 123.0, 'maxValue': 123.0 } } } } }, ] }, 'recordExpiryDurationDays': 123 }, ], 'indexedKeys': [ { 'key': 'string', 'type': 'STRING'|'STRINGLIST'|'NUMBER' }, ], 'namespaceKeys': [ { 'key': 'string', 'validation': { 'allowedValues': [ 'string', ], 'regexPattern': 'string' } }, ], 'streamDeliveryResources': { 'resources': [ { 'kinesis': { 'dataStreamArn': 'string', 'contentConfigurations': [ { 'type': 'MEMORY_RECORDS', 'level': 'METADATA_ONLY'|'FULL_CONTENT' }, ] } }, ] }, 'managedByResourceArn': 'string' } }
Response Structure
(dict) –
memory (dict) –
The details of the created memory, including its ID, ARN, name, description, and configuration settings.
arn (string) –
The Amazon Resource Name (ARN) of the memory.
id (string) –
The unique identifier of the memory.
name (string) –
The name of the memory.
description (string) –
The description of the memory.
encryptionKeyArn (string) –
The ARN of the KMS key used to encrypt the memory.
memoryExecutionRoleArn (string) –
The ARN of the IAM role that provides permissions for the memory.
eventExpiryDuration (integer) –
The number of days after which memory events will expire.
status (string) –
The current status of the memory.
failureReason (string) –
The reason for failure if the memory is in a failed state.
createdAt (datetime) –
The timestamp when the memory was created.
updatedAt (datetime) –
The timestamp when the memory was last updated.
strategies (list) –
The list of memory strategies associated with this memory.
(dict) –
Contains information about a memory strategy.
strategyId (string) –
The unique identifier of the memory strategy.
name (string) –
The name of the memory strategy.
description (string) –
The description of the memory strategy.
configuration (dict) –
The configuration of the memory strategy.
type (string) –
The type of override for the strategy configuration.
extraction (dict) –
The extraction configuration for the memory strategy.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
customExtractionConfiguration. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
customExtractionConfiguration (dict) –
The custom extraction configuration.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
semanticExtractionOverride,userPreferenceExtractionOverride,episodicExtractionOverride. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
semanticExtractionOverride (dict) –
The semantic extraction override configuration.
appendToPrompt (string) –
The text to append to the prompt for semantic extraction.
modelId (string) –
The model ID to use for semantic extraction.
userPreferenceExtractionOverride (dict) –
The user preference extraction override configuration.
appendToPrompt (string) –
The text to append to the prompt for user preference extraction.
modelId (string) –
The model ID to use for user preference extraction.
episodicExtractionOverride (dict) –
The configurations to override the default extraction step for the episodic memory strategy.
appendToPrompt (string) –
The text appended to the prompt for the extraction step of the episodic memory strategy.
modelId (string) –
The model ID used for the extraction step of the episodic memory strategy.
consolidation (dict) –
The consolidation configuration for the memory strategy.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
customConsolidationConfiguration. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
customConsolidationConfiguration (dict) –
The custom consolidation configuration.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
semanticConsolidationOverride,summaryConsolidationOverride,userPreferenceConsolidationOverride,episodicConsolidationOverride. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
semanticConsolidationOverride (dict) –
The semantic consolidation override configuration.
appendToPrompt (string) –
The text to append to the prompt for semantic consolidation.
modelId (string) –
The model ID to use for semantic consolidation.
summaryConsolidationOverride (dict) –
The summary consolidation override configuration.
appendToPrompt (string) –
The text to append to the prompt for summary consolidation.
modelId (string) –
The model ID to use for summary consolidation.
userPreferenceConsolidationOverride (dict) –
The user preference consolidation override configuration.
appendToPrompt (string) –
The text to append to the prompt for user preference consolidation.
modelId (string) –
The model ID to use for user preference consolidation.
episodicConsolidationOverride (dict) –
The configurations to override the default consolidation step for the episodic memory strategy.
appendToPrompt (string) –
The text appended to the prompt for the consolidation step of the episodic memory strategy.
modelId (string) –
The model ID used for the consolidation step of the episodic memory strategy.
reflection (dict) –
The reflection configuration for the memory strategy.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
customReflectionConfiguration,episodicReflectionConfiguration. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
customReflectionConfiguration (dict) –
The configuration for a custom reflection strategy.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
episodicReflectionOverride. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
episodicReflectionOverride (dict) –
The configuration for a reflection strategy to override the default one.
appendToPrompt (string) –
The text appended to the prompt for the reflection step of the episodic memory strategy.
modelId (string) –
The model ID used for the reflection step of the episodic memory strategy.
namespaces (list) –
This is a legacy parameter. The namespaces over which reflections were created. Can be less nested than the episodic namespaces.
(string) –
namespaceTemplates (list) –
The namespaceTemplates over which reflections were created. Can be less nested than the episodic namespaces.
(string) –
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this reflection override.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) –
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
llmExtractionConfig. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) –
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
stringValidation,stringListValidation,numberValidation. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) –
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
episodicReflectionConfiguration (dict) –
The configuration for the episodic reflection strategy.
namespaces (list) –
This is a legacy parameter, use
namespaceTemplates. The namespaces for which to create reflections. Can be less nested than the episodic namespaces.(string) –
namespaceTemplates (list) –
The namespaceTemplates for which to create reflections. Can be less nested than the episodic namespaces.
(string) –
memoryRecordSchema (dict) –
“Schema for metadata fields on records generated by reflections.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) –
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
llmExtractionConfig. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) –
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
stringValidation,stringListValidation,numberValidation. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) –
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
selfManagedConfiguration (dict) –
Self-managed configuration settings.
triggerConditions (list) –
A list of conditions that trigger memory processing.
(dict) –
Condition that triggers memory processing.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
messageBasedTrigger,tokenBasedTrigger,timeBasedTrigger. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
messageBasedTrigger (dict) –
Message based trigger configuration.
messageCount (integer) –
The number of messages that trigger memory processing.
tokenBasedTrigger (dict) –
Token based trigger configuration.
tokenCount (integer) –
Number of tokens that trigger memory processing.
timeBasedTrigger (dict) –
Time based trigger configuration.
idleSessionTimeout (integer) –
Idle session timeout (seconds) that triggers memory processing.
invocationConfiguration (dict) –
The configuration to use when invoking memory processing.
topicArn (string) –
The ARN of the SNS topic for job notifications.
payloadDeliveryBucketName (string) –
The S3 bucket name for event payload delivery.
historicalContextWindowSize (integer) –
The number of historical messages to include in processing context.
type (string) –
The type of the memory strategy.
namespaces (list) –
This is a legacy parameter. The namespaces associated with the memory strategy.
(string) –
namespaceTemplates (list) –
The namespaceTemplates associated with the memory strategy.
(string) –
createdAt (datetime) –
The timestamp when the memory strategy was created.
updatedAt (datetime) –
The timestamp when the memory strategy was last updated.
status (string) –
The current status of the memory strategy.
memoryRecordSchema (dict) –
Schema for metadata fields on records generated by this strategy.
metadataSchema (list) –
The metadata field definitions for this strategy.
(dict) –
A metadata field definition within a strategy’s schema.
key (string) –
The metadata field name. Must match an indexed key to be queryable via metadata filters.
type (string) –
The MetadataValueType.
extractionType (string) –
Specifies whether the metadata value is extracted by the LLM or passed through deterministically from the event.
extractionConfig (dict) –
Configuration for extracting this metadata value from conversational content. Applicable only if extractionType is LLM inferred.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
llmExtractionConfig. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
llmExtractionConfig (dict) –
Model-based extraction using a definition and instructions.
llmExtractionInstruction (string) –
Instructions for extraction. Supports built-in operators like LATEST_VALUE or custom natural-language instructions.
definition (string) –
Description of what this metadata field represents.
validation (dict) –
Validation rules to constrain extracted values.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
stringValidation,stringListValidation,numberValidation. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
stringValidation (dict) –
Validation for STRING fields.
allowedValues (list) –
Allowed values for this STRING field.
(string) –
stringListValidation (dict) –
Validation for STRINGLIST fields.
allowedValues (list) –
Allowed values for items in this STRINGLIST field.
(string) –
maxItems (integer) –
Maximum number of items in the string list.
numberValidation (dict) –
Validation for NUMBER fields.
minValue (float) –
Minimum allowed value.
maxValue (float) –
Maximum allowed value.
recordExpiryDurationDays (integer) –
The effective record expiry (long-term memory time-to-live), in days, for memory records generated by this strategy. New records expire this many days after they are created. If not set, records generated by this strategy do not expire.
indexedKeys (list) –
The indexed metadata keys for this memory. Only indexed keys can be used in metadata filters.
(dict) –
A metadata key indexed for filtering.
key (string) –
The metadata key name to index.
type (string) –
The data type of the indexed key.
namespaceKeys (list) –
The namespace variable key definitions for this memory. Namespace keys define custom variables used in
namespaceTemplateswith optional validation rules.(dict) –
A namespace variable key definition with optional
NamespaceKeyValidationrules.key (string) –
The namespace variable key name.
validation (dict) –
The validation rules that constrain values for this namespace variable at runtime (
CreateEventAPI).allowedValues (list) –
The allowed values for this namespace variable key.
(string) –
regexPattern (string) –
A regex pattern that the namespace variable key-value must match.
streamDeliveryResources (dict) –
Configuration for streaming memory record data to external resources.
resources (list) –
List of stream delivery resource configurations.
(dict) –
Supported stream delivery resource types.
Note
This is a Tagged Union structure. Only one of the following top level keys will be set:
kinesis. If a client receives an unknown member it will setSDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure ofSDK_UNKNOWN_MEMBERis as follows:'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
kinesis (dict) –
Kinesis Data Stream configuration.
dataStreamArn (string) –
ARN of the Kinesis Data Stream.
contentConfigurations (list) –
Content configurations for stream delivery.
(dict) –
Defines what content to stream and at what level of detail.
type (string) –
Type of content to stream.
level (string) –
Level of detail for streamed content.
managedByResourceArn (string) –
ARN of the resource managing this memory (e.g. a harness). When set, strategy modifications and deletion are only allowed through the managing resource.
Exceptions
BedrockAgentCoreControl.Client.exceptions.ServiceQuotaExceededExceptionBedrockAgentCoreControl.Client.exceptions.ServiceExceptionBedrockAgentCoreControl.Client.exceptions.ValidationExceptionBedrockAgentCoreControl.Client.exceptions.AccessDeniedExceptionBedrockAgentCoreControl.Client.exceptions.ConflictExceptionBedrockAgentCoreControl.Client.exceptions.ResourceNotFoundExceptionBedrockAgentCoreControl.Client.exceptions.ThrottledException