Skip to content

EventSourceMappingConfiguration

Source code in docs_src/capo_lambda/types/event_source_mapping_configuration.py
class EventSourceMappingConfiguration(TypedDict, closed=True):
    uuid: NotRequired["capo_lambda.types.uuid_string.UUIDString"]
    """<p>The identifier of the event source mapping.</p>"""
    starting_position: NotRequired[
        "capo_lambda.types.event_source_position.EventSourcePosition"
    ]
    """<p>The position in a stream from which to start reading. Required for Amazon Kinesis and Amazon DynamoDB Stream event sources. <code>AT_TIMESTAMP</code> is supported only for Amazon Kinesis streams, Amazon DocumentDB, Amazon MSK, and self-managed Apache Kafka.</p>"""
    starting_position_timestamp: NotRequired["capo_lambda.types.date.Date"]
    """<p>With <code>StartingPosition</code> set to <code>AT_TIMESTAMP</code>, the time from which to start reading. <code>StartingPositionTimestamp</code> cannot be in the future.</p>"""
    batch_size: NotRequired["capo_lambda.types.batch_size.BatchSize"]
    """<p>The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB).</p> <p>Default value: Varies by service. For Amazon SQS, the default is 10. For all other services, the default is 100.</p> <p>Related setting: When you set <code>BatchSize</code> to a value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>"""
    maximum_batching_window_in_seconds: NotRequired[
        "capo_lambda.types.maximum_batching_window_in_seconds.MaximumBatchingWindowInSeconds"
    ]
    """<p>The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function. You can configure <code>MaximumBatchingWindowInSeconds</code> to any value from 0 seconds to 300 seconds in increments of seconds.</p> <p>For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default batching window is 500 ms. Note that because you can only change <code>MaximumBatchingWindowInSeconds</code> in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it. To restore the default batching window, you must create a new event source mapping.</p> <p>Related setting: For streams and Amazon SQS event sources, when you set <code>BatchSize</code> to a value greater than 10, you must set <code>MaximumBatchingWindowInSeconds</code> to at least 1.</p>"""
    parallelization_factor: NotRequired[
        "capo_lambda.types.parallelization_factor.ParallelizationFactor"
    ]
    """<p>(Kinesis and DynamoDB Streams only) The number of batches to process concurrently from each shard. The default value is 1.</p>"""
    event_source_arn: NotRequired["capo_lambda.types.arn.Arn"]
    """<p>The Amazon Resource Name (ARN) of the event source.</p>"""
    filter_criteria: NotRequired["capo_lambda.types.filter_criteria.FilterCriteria"]
    """<p>An object that defines the filter criteria that determine whether Lambda should process an event. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html">Lambda event filtering</a>.</p> <p>If filter criteria is encrypted, this field shows up as <code>null</code> in the response of ListEventSourceMapping API calls. You can view this field in plaintext in the response of GetEventSourceMapping and DeleteEventSourceMapping calls if you have <code>kms:Decrypt</code> permissions for the correct KMS key.</p>"""
    filter_criteria_error: NotRequired[
        "capo_lambda.types.filter_criteria_error.FilterCriteriaError"
    ]
    """<p>An object that contains details about an error related to filter criteria encryption.</p>"""
    kms_key_arn: NotRequired["capo_lambda.types.kms_key_arn.KMSKeyArn"]
    """<p> The ARN of the Key Management Service (KMS) customer managed key that Lambda uses to encrypt your function's <a href="https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventfiltering.html#filtering-basics">filter criteria</a>.</p>"""
    metrics_config: NotRequired[
        "capo_lambda.types.event_source_mapping_metrics_config.EventSourceMappingMetricsConfig"
    ]
    """<p>The metrics configuration for your event source. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/monitoring-metrics-types.html#event-source-mapping-metrics">Event source mapping metrics</a>.</p>"""
    logging_config: NotRequired[
        "capo_lambda.types.event_source_mapping_logging_config.EventSourceMappingLoggingConfig"
    ]
    """<p>(Amazon MSK, and self-managed Apache Kafka only) The logging configuration for your event source. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/esm-logging.html">Event source mapping logging</a>.</p>"""
    scaling_config: NotRequired["capo_lambda.types.scaling_config.ScalingConfig"]
    """<p>(Amazon SQS only) The scaling configuration for the event source. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-max-concurrency">Configuring maximum concurrency for Amazon SQS event sources</a>.</p>"""
    function_arn: NotRequired["capo_lambda.types.function_arn.FunctionArn"]
    """<p>The ARN of the Lambda function.</p>"""
    last_modified: NotRequired["capo_lambda.types.date.Date"]
    """<p>The date that the event source mapping was last updated or that its state changed.</p>"""
    last_processing_result: NotRequired["capo_lambda.types.string.String"]
    """<p>The result of the event source mapping's last processing attempt.</p>"""
    state: NotRequired["capo_lambda.types.string.String"]
    """<p>The state of the event source mapping. It can be one of the following: <code>Creating</code>, <code>Enabling</code>, <code>Enabled</code>, <code>Disabling</code>, <code>Disabled</code>, <code>Updating</code>, or <code>Deleting</code>.</p>"""
    state_transition_reason: NotRequired["capo_lambda.types.string.String"]
    """<p>Indicates whether a user or Lambda made the last change to the event source mapping.</p>"""
    destination_config: NotRequired[
        "capo_lambda.types.destination_config.DestinationConfig"
    ]
    """<p>(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) A configuration object that specifies the destination of an event after Lambda processes it.</p>"""
    topics: NotRequired["capo_lambda.types.topics.Topics"]
    """<p>The name of the Kafka topic.</p>"""
    queues: NotRequired["capo_lambda.types.queues.Queues"]
    """<p> (Amazon MQ) The name of the Amazon MQ broker destination queue to consume.</p>"""
    source_access_configurations: NotRequired[
        "capo_lambda.types.source_access_configurations.SourceAccessConfigurations"
    ]
    """<p>An array of the authentication protocol, VPC components, or virtual host to secure and define your event source.</p>"""
    self_managed_event_source: NotRequired[
        "capo_lambda.types.self_managed_event_source.SelfManagedEventSource"
    ]
    """<p>The self-managed Apache Kafka cluster for your event source.</p>"""
    maximum_record_age_in_seconds: NotRequired[
        "capo_lambda.types.maximum_record_age_in_seconds.MaximumRecordAgeInSeconds"
    ]
    """<p>(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) Discard records older than the specified age. The default value is -1, which sets the maximum age to infinite. When the value is set to infinite, Lambda never discards old records.</p> <note> <p>The minimum valid value for maximum record age is 60s. Although values less than 60 and greater than -1 fall within the parameter's absolute range, they are not allowed</p> </note>"""
    bisect_batch_on_function_error: NotRequired[
        "capo_lambda.types.bisect_batch_on_function_error.BisectBatchOnFunctionError"
    ]
    """<p>(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) If the function returns an error, split the batch in two and retry. The default value is false.</p>"""
    maximum_retry_attempts: NotRequired[
        "capo_lambda.types.maximum_retry_attempts_event_source_mapping.MaximumRetryAttemptsEventSourceMapping"
    ]
    """<p>(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) Discard records after the specified number of retries. The default value is -1, which sets the maximum number of retries to infinite. When MaximumRetryAttempts is infinite, Lambda retries failed records until the record expires in the event source.</p>"""
    tumbling_window_in_seconds: NotRequired[
        "capo_lambda.types.tumbling_window_in_seconds.TumblingWindowInSeconds"
    ]
    """<p>(Kinesis and DynamoDB Streams only) The duration in seconds of a processing window for DynamoDB and Kinesis Streams event sources. A value of 0 seconds indicates no tumbling window.</p>"""
    function_response_types: NotRequired[
        "capo_lambda.types.function_response_type_list.FunctionResponseTypeList"
    ]
    """<p>(Kinesis, DynamoDB Streams, Amazon MSK, self-managed Apache Kafka, and Amazon SQS) A list of current response type enums applied to the event source mapping.</p>"""
    amazon_managed_kafka_event_source_config: NotRequired[
        "capo_lambda.types.amazon_managed_kafka_event_source_config.AmazonManagedKafkaEventSourceConfig"
    ]
    """<p>Specific configuration settings for an Amazon Managed Streaming for Apache Kafka (Amazon MSK) event source.</p>"""
    self_managed_kafka_event_source_config: NotRequired[
        "capo_lambda.types.self_managed_kafka_event_source_config.SelfManagedKafkaEventSourceConfig"
    ]
    """<p>Specific configuration settings for a self-managed Apache Kafka event source.</p>"""
    document_db_event_source_config: NotRequired[
        "capo_lambda.types.document_db_event_source_config.DocumentDBEventSourceConfig"
    ]
    """<p>Specific configuration settings for a DocumentDB event source.</p>"""
    event_source_mapping_arn: NotRequired[
        "capo_lambda.types.event_source_mapping_arn.EventSourceMappingArn"
    ]
    """<p>The Amazon Resource Name (ARN) of the event source mapping.</p>"""
    provisioned_poller_config: NotRequired[
        "capo_lambda.types.provisioned_poller_config.ProvisionedPollerConfig"
    ]
    """<p>(Amazon SQS, Amazon MSK, and self-managed Apache Kafka only) The provisioned mode configuration for the event source. For more information, see <a href="https://docs.aws.amazon.com/lambda/latest/dg/invocation-eventsourcemapping.html#invocation-eventsourcemapping-provisioned-mode">provisioned mode</a>.</p>"""

amazon_managed_kafka_event_source_config instance-attribute

amazon_managed_kafka_event_source_config: NotRequired[
    AmazonManagedKafkaEventSourceConfig
]

Specific configuration settings for an Amazon Managed Streaming for Apache Kafka (Amazon MSK) event source.

batch_size instance-attribute

batch_size: NotRequired[BatchSize]

The maximum number of records in each batch that Lambda pulls from your stream or queue and sends to your function. Lambda passes all of the records in the batch to the function in a single call, up to the payload limit for synchronous invocation (6 MB).

Default value: Varies by service. For Amazon SQS, the default is 10. For all other services, the default is 100.

Related setting: When you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

bisect_batch_on_function_error instance-attribute

bisect_batch_on_function_error: NotRequired[BisectBatchOnFunctionError]

(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) If the function returns an error, split the batch in two and retry. The default value is false.

destination_config instance-attribute

destination_config: NotRequired[DestinationConfig]

(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) A configuration object that specifies the destination of an event after Lambda processes it.

document_db_event_source_config instance-attribute

document_db_event_source_config: NotRequired[DocumentDBEventSourceConfig]

Specific configuration settings for a DocumentDB event source.

event_source_arn instance-attribute

event_source_arn: NotRequired[Arn]

The Amazon Resource Name (ARN) of the event source.

event_source_mapping_arn instance-attribute

event_source_mapping_arn: NotRequired[EventSourceMappingArn]

The Amazon Resource Name (ARN) of the event source mapping.

filter_criteria instance-attribute

filter_criteria: NotRequired[FilterCriteria]

An object that defines the filter criteria that determine whether Lambda should process an event. For more information, see Lambda event filtering.

If filter criteria is encrypted, this field shows up as null in the response of ListEventSourceMapping API calls. You can view this field in plaintext in the response of GetEventSourceMapping and DeleteEventSourceMapping calls if you have kms:Decrypt permissions for the correct KMS key.

filter_criteria_error instance-attribute

filter_criteria_error: NotRequired[FilterCriteriaError]

An object that contains details about an error related to filter criteria encryption.

function_arn instance-attribute

function_arn: NotRequired[FunctionArn]

The ARN of the Lambda function.

function_response_types instance-attribute

function_response_types: NotRequired[FunctionResponseTypeList]

(Kinesis, DynamoDB Streams, Amazon MSK, self-managed Apache Kafka, and Amazon SQS) A list of current response type enums applied to the event source mapping.

kms_key_arn instance-attribute

kms_key_arn: NotRequired[KMSKeyArn]

The ARN of the Key Management Service (KMS) customer managed key that Lambda uses to encrypt your function's filter criteria.

last_modified instance-attribute

last_modified: NotRequired[Date]

The date that the event source mapping was last updated or that its state changed.

last_processing_result instance-attribute

last_processing_result: NotRequired[String]

The result of the event source mapping's last processing attempt.

logging_config instance-attribute

logging_config: NotRequired[EventSourceMappingLoggingConfig]

(Amazon MSK, and self-managed Apache Kafka only) The logging configuration for your event source. For more information, see Event source mapping logging.

maximum_batching_window_in_seconds instance-attribute

maximum_batching_window_in_seconds: NotRequired[MaximumBatchingWindowInSeconds]

The maximum amount of time, in seconds, that Lambda spends gathering records before invoking the function. You can configure MaximumBatchingWindowInSeconds to any value from 0 seconds to 300 seconds in increments of seconds.

For streams and Amazon SQS event sources, the default batching window is 0 seconds. For Amazon MSK, Self-managed Apache Kafka, Amazon MQ, and DocumentDB event sources, the default batching window is 500 ms. Note that because you can only change MaximumBatchingWindowInSeconds in increments of seconds, you cannot revert back to the 500 ms default batching window after you have changed it. To restore the default batching window, you must create a new event source mapping.

Related setting: For streams and Amazon SQS event sources, when you set BatchSize to a value greater than 10, you must set MaximumBatchingWindowInSeconds to at least 1.

maximum_record_age_in_seconds instance-attribute

maximum_record_age_in_seconds: NotRequired[MaximumRecordAgeInSeconds]

(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) Discard records older than the specified age. The default value is -1, which sets the maximum age to infinite. When the value is set to infinite, Lambda never discards old records.

The minimum valid value for maximum record age is 60s. Although values less than 60 and greater than -1 fall within the parameter's absolute range, they are not allowed

maximum_retry_attempts instance-attribute

maximum_retry_attempts: NotRequired[MaximumRetryAttemptsEventSourceMapping]

(Kinesis, DynamoDB Streams, Amazon MSK, and self-managed Apache Kafka) Discard records after the specified number of retries. The default value is -1, which sets the maximum number of retries to infinite. When MaximumRetryAttempts is infinite, Lambda retries failed records until the record expires in the event source.

metrics_config instance-attribute

metrics_config: NotRequired[EventSourceMappingMetricsConfig]

The metrics configuration for your event source. For more information, see Event source mapping metrics.

parallelization_factor instance-attribute

parallelization_factor: NotRequired[ParallelizationFactor]

(Kinesis and DynamoDB Streams only) The number of batches to process concurrently from each shard. The default value is 1.

provisioned_poller_config instance-attribute

provisioned_poller_config: NotRequired[ProvisionedPollerConfig]

(Amazon SQS, Amazon MSK, and self-managed Apache Kafka only) The provisioned mode configuration for the event source. For more information, see provisioned mode.

queues instance-attribute

queues: NotRequired[Queues]

(Amazon MQ) The name of the Amazon MQ broker destination queue to consume.

scaling_config instance-attribute

scaling_config: NotRequired[ScalingConfig]

(Amazon SQS only) The scaling configuration for the event source. For more information, see Configuring maximum concurrency for Amazon SQS event sources.

self_managed_event_source instance-attribute

self_managed_event_source: NotRequired[SelfManagedEventSource]

The self-managed Apache Kafka cluster for your event source.

self_managed_kafka_event_source_config instance-attribute

self_managed_kafka_event_source_config: NotRequired[SelfManagedKafkaEventSourceConfig]

Specific configuration settings for a self-managed Apache Kafka event source.

source_access_configurations instance-attribute

source_access_configurations: NotRequired[SourceAccessConfigurations]

An array of the authentication protocol, VPC components, or virtual host to secure and define your event source.

starting_position instance-attribute

starting_position: NotRequired[EventSourcePosition]

The position in a stream from which to start reading. Required for Amazon Kinesis and Amazon DynamoDB Stream event sources. AT_TIMESTAMP is supported only for Amazon Kinesis streams, Amazon DocumentDB, Amazon MSK, and self-managed Apache Kafka.

starting_position_timestamp instance-attribute

starting_position_timestamp: NotRequired[Date]

With StartingPosition set to AT_TIMESTAMP, the time from which to start reading. StartingPositionTimestamp cannot be in the future.

state instance-attribute

state: NotRequired[String]

The state of the event source mapping. It can be one of the following: Creating, Enabling, Enabled, Disabling, Disabled, Updating, or Deleting.

state_transition_reason instance-attribute

state_transition_reason: NotRequired[String]

Indicates whether a user or Lambda made the last change to the event source mapping.

topics instance-attribute

topics: NotRequired[Topics]

The name of the Kafka topic.

tumbling_window_in_seconds instance-attribute

tumbling_window_in_seconds: NotRequired[TumblingWindowInSeconds]

(Kinesis and DynamoDB Streams only) The duration in seconds of a processing window for DynamoDB and Kinesis Streams event sources. A value of 0 seconds indicates no tumbling window.

uuid instance-attribute

uuid: NotRequired[UUIDString]

The identifier of the event source mapping.