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.