GetBucketReplication
Note
This operation is not supported for directory buckets.
Returns the replication configuration of a bucket.
Note
It can take a while to propagate the put or delete a replication configuration to all Amazon S3 systems. Therefore, a get request soon after put or delete can return a wrong result.
For information about replication configuration, see Replication in the Amazon S3 User Guide.
This action requires permissions for the s3:GetReplicationConfiguration
action. For more information about permissions, see Using Bucket Policies and User
Policies.
If you include the Filter
element in a replication configuration, you must
also include the DeleteMarkerReplication
and Priority
elements.
The response also returns those elements.
For information about GetBucketReplication
errors, see List of
replication-related error codes
The following operations are related to GetBucketReplication
:
Request Syntax
GET /?replication HTTP/1.1
Host: Bucket
.s3.amazonaws.com
x-amz-expected-bucket-owner: ExpectedBucketOwner
URI Request Parameters
The request uses the following URI parameters.
- Bucket
-
The bucket name for which to get the replication information.
Required: Yes
- x-amz-expected-bucket-owner
-
The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code
403 Forbidden
(access denied).
Request Body
The request does not have a request body.
Response Syntax
HTTP/1.1 200
<?xml version="1.0" encoding="UTF-8"?>
<ReplicationConfiguration>
<Role>string</Role>
<Rule>
<DeleteMarkerReplication>
<Status>string</Status>
</DeleteMarkerReplication>
<Destination>
<AccessControlTranslation>
<Owner>string</Owner>
</AccessControlTranslation>
<Account>string</Account>
<Bucket>string</Bucket>
<EncryptionConfiguration>
<ReplicaKmsKeyID>string</ReplicaKmsKeyID>
</EncryptionConfiguration>
<Metrics>
<EventThreshold>
<Minutes>integer</Minutes>
</EventThreshold>
<Status>string</Status>
</Metrics>
<ReplicationTime>
<Status>string</Status>
<Time>
<Minutes>integer</Minutes>
</Time>
</ReplicationTime>
<StorageClass>string</StorageClass>
</Destination>
<ExistingObjectReplication>
<Status>string</Status>
</ExistingObjectReplication>
<Filter>
<And>
<Prefix>string</Prefix>
<Tag>
<Key>string</Key>
<Value>string</Value>
</Tag>
...
</And>
<Prefix>string</Prefix>
<Tag>
<Key>string</Key>
<Value>string</Value>
</Tag>
</Filter>
<ID>string</ID>
<Prefix>string</Prefix>
<Priority>integer</Priority>
<SourceSelectionCriteria>
<ReplicaModifications>
<Status>string</Status>
</ReplicaModifications>
<SseKmsEncryptedObjects>
<Status>string</Status>
</SseKmsEncryptedObjects>
</SourceSelectionCriteria>
<Status>string</Status>
</Rule>
...
</ReplicationConfiguration>
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in XML format by the service.
- ReplicationConfiguration
-
Root level tag for the ReplicationConfiguration parameters.
Required: Yes
- Role
-
The Amazon Resource Name (ARN) of the Amazon Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects. For more information, see How to Set Up Replication in the Amazon S3 User Guide.
Type: String
- Rule
-
A container for one or more replication rules. A replication configuration must have at least one rule and can contain a maximum of 1,000 rules.
Type: Array of ReplicationRule data types
Examples
Sample Request: Retrieve replication configuration information
The following GET request retrieves information about the replication
configuration set for the examplebucket
bucket:
GET /?replication HTTP/1.1 Host: examplebucket.s3.<Region>.amazonaws.com Date: Tue, 10 Feb 2015 00:17:21 GMT Authorization: authorization string
Sample Response
The following response shows that replication is enabled on the bucket. The empty
prefix indicates that Amazon S3 will replicate all objects that are created in the
examplebucket
bucket. The Destination
element identifies
the target bucket where Amazon S3 creates the object replicas, and the storage class
(STANDARD_IA) that Amazon S3 uses when creating replicas.
Amazon S3 assumes the specified IAM role to replicate objects on behalf of the bucket owner, which is the Amazon Web Services account that created the bucket.
HTTP/1.1 200 OK x-amz-id-2: ITnGT1y4RyTmXa3rPi4hklTXouTf0hccUjo0iCPjz6FnfIutBj3M7fPGlWO2SEWp x-amz-request-id: 51991C342example Date: Tue, 10 Feb 2015 00:17:23 GMT Server: AmazonS3 Content-Length: contentlength <?xml version="1.0" encoding="UTF-8"?> <ReplicationConfiguration> <Role>arn:aws:iam::35667example:role/CrossRegionReplicationRoleForS3</Role> <Rule> <ID>rule1</ID> <Status>Enabled</Status> <Priority>1</Priority> <DeleteMarkerReplication> <Status>Disabled</Status> </DeleteMarkerReplication> <Filter> <And> <Prefix>TaxDocs</Prefix> <Tag> <Key>key1</Key> <Value>value1</Value> </Tag> <Tag> <Key>key1</Key> <Value>value1</Value> </Tag> </And> </Filter> <Destination> <Bucket>arn:aws:s3:::exampletargetbucket</Bucket> </Destination> </Rule> </ReplicationConfiguration>
See Also
For more information about using this API in one of the language-specific Amazon SDKs, see the following: