Use PutBucketVersioning with an AWS SDK or CLI - Amazon Simple Storage Service

Use PutBucketVersioning with an AWS SDK or CLI

The following code examples show how to use PutBucketVersioning.

CLI
AWS CLI

The following command enables versioning on a bucket named my-bucket:

aws s3api put-bucket-versioning --bucket my-bucket --versioning-configuration Status=Enabled

The following command enables versioning, and uses an mfa code

aws s3api put-bucket-versioning --bucket my-bucket --versioning-configuration Status=Enabled --mfa "SERIAL 123456"
Java
SDK for Java 2.x
Note

There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository.

/** * Enables bucket versioning for the specified S3 bucket. * * @param s3Client the S3 client to use for the operation * @param bucketName the name of the S3 bucket to enable versioning for */ public static void enableBucketVersioning(S3Client s3Client, String bucketName){ VersioningConfiguration versioningConfiguration = VersioningConfiguration.builder() .status(BucketVersioningStatus.ENABLED) .build(); PutBucketVersioningRequest versioningRequest = PutBucketVersioningRequest.builder() .bucket(bucketName) .versioningConfiguration(versioningConfiguration) .build(); s3Client.putBucketVersioning(versioningRequest); System.out.println("Bucket versioning has been enabled for "+bucketName); }
PowerShell
Tools for PowerShell

Example 1: The command enables versioning for the given S3 bucket.

Write-S3BucketVersioning -BucketName 'amzn-s3-demo-bucket' -VersioningConfig_Status Enabled

For a complete list of AWS SDK developer guides and code examples, see Developing with Amazon S3 using the AWS SDKs. This topic also includes information about getting started and details about previous SDK versions.