You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.
Class: Aws::S3::Types::PutBucketNotificationConfigurationRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::S3::Types::PutBucketNotificationConfigurationRequest
- Defined in:
- (unknown)
Overview
When passing PutBucketNotificationConfigurationRequest as input to an Aws::Client method, you can use a vanilla Hash:
{
bucket: "BucketName", # required
notification_configuration: { # required
topic_configurations: [
{
id: "NotificationId",
topic_arn: "TopicArn", # required
events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
filter: {
key: {
filter_rules: [
{
name: "prefix", # accepts prefix, suffix
value: "FilterRuleValue",
},
],
},
},
},
],
queue_configurations: [
{
id: "NotificationId",
queue_arn: "QueueArn", # required
events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
filter: {
key: {
filter_rules: [
{
name: "prefix", # accepts prefix, suffix
value: "FilterRuleValue",
},
],
},
},
},
],
lambda_function_configurations: [
{
id: "NotificationId",
lambda_function_arn: "LambdaFunctionArn", # required
events: ["s3:ReducedRedundancyLostObject"], # required, accepts s3:ReducedRedundancyLostObject, s3:ObjectCreated:*, s3:ObjectCreated:Put, s3:ObjectCreated:Post, s3:ObjectCreated:Copy, s3:ObjectCreated:CompleteMultipartUpload, s3:ObjectRemoved:*, s3:ObjectRemoved:Delete, s3:ObjectRemoved:DeleteMarkerCreated, s3:ObjectRestore:*, s3:ObjectRestore:Post, s3:ObjectRestore:Completed, s3:Replication:*, s3:Replication:OperationFailedReplication, s3:Replication:OperationNotTracked, s3:Replication:OperationMissedThreshold, s3:Replication:OperationReplicatedAfterThreshold
filter: {
key: {
filter_rules: [
{
name: "prefix", # accepts prefix, suffix
value: "FilterRuleValue",
},
],
},
},
},
],
},
expected_bucket_owner: "AccountId",
use_accelerate_endpoint: false,
}
Instance Attribute Summary collapse
-
#bucket ⇒ String
The name of the bucket.
-
#expected_bucket_owner ⇒ String
The account id of the expected bucket owner.
-
#notification_configuration ⇒ Types::NotificationConfiguration
A container for specifying the notification configuration of the bucket.
-
#use_accelerate_endpoint ⇒ Boolean
When true, the "https://BUCKETNAME.s3-accelerate.amazonaws.com" endpoint will be used.
Instance Attribute Details
#bucket ⇒ String
The name of the bucket.
#expected_bucket_owner ⇒ String
The account id of the expected bucket owner. If the bucket is owned by a
different account, the request will fail with an HTTP 403 (Access
Denied)
error.
#notification_configuration ⇒ Types::NotificationConfiguration
A container for specifying the notification configuration of the bucket. If this element is empty, notifications are turned off for the bucket.
#use_accelerate_endpoint ⇒ Boolean
When true, the "https://BUCKETNAME.s3-accelerate.amazonaws.com" endpoint will be used.