S3
The object describing an S3 event source type.
Syntax
To declare this entity in your AWS Serverless Application Model (AWS SAM) template, use the following syntax.
YAML
Bucket:StringEvents:String | ListFilter:NotificationFilter
Properties
-
Bucket -
S3 bucket name. This bucket must exist in the same template.
Type: String
Required: Yes
AWS CloudFormation compatibility: This property is similar to the
BucketNameproperty of anAWS::S3::Bucketresource. This is a required field in SAM. This field only accepts a reference to the S3 bucket created in this template -
Events -
The Amazon S3 bucket event for which to invoke the Lambda function. See Amazon S3 supported event types for a list of valid values.
Type: String | List
Required: Yes
AWS CloudFormation compatibility: This property is passed directly to the
Eventproperty of theAWS::S3::BucketLambdaConfigurationdata type. -
Filter -
The filtering rules that determine which Amazon S3 objects invoke the Lambda function. For information about Amazon S3 key name filtering, see Configuring Amazon S3 Event Notifications in the Amazon Simple Storage Service User Guide.
Type: NotificationFilter
Required: No
AWS CloudFormation compatibility: This property is passed directly to the
Filterproperty of theAWS::S3::BucketLambdaConfigurationdata type.
Examples
S3-Event
Example of an S3 Event.
YAML
Events: S3Event: Type: S3 Properties: Bucket: Ref: ImagesBucket # This must be the name of an S3 bucket declared in the same template file Events: s3:ObjectCreated:* Filter: S3Key: Rules: - Name: prefix # or "suffix" Value: value # The value to search for in the S3 object key names