import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint"; import { Command as $Command } from "@aws-sdk/smithy-client"; import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types"; import { PutBucketInventoryConfigurationRequest } from "../models/models_0"; import { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client"; /** * @public * * The input for {@link PutBucketInventoryConfigurationCommand}. */ export interface PutBucketInventoryConfigurationCommandInput extends PutBucketInventoryConfigurationRequest { } /** * @public * * The output of {@link PutBucketInventoryConfigurationCommand}. */ export interface PutBucketInventoryConfigurationCommandOutput extends __MetadataBearer { } /** * @public *
This implementation of the PUT action adds an inventory configuration
* (identified by the inventory ID) to the bucket. You can have up to 1,000 inventory
* configurations per bucket.
Amazon S3 inventory generates inventories of the objects in the bucket on a daily or weekly * basis, and the results are published to a flat file. The bucket that is inventoried is * called the source bucket, and the bucket where the inventory flat file * is stored is called the destination bucket. The * destination bucket must be in the same Amazon Web Services Region as the * source bucket.
*When you configure an inventory for a source bucket, you specify * the destination bucket where you want the inventory to be stored, and * whether to generate the inventory daily or weekly. You can also configure what object * metadata to include and whether to inventory all object versions or only current versions. * For more information, see Amazon S3 * Inventory in the Amazon S3 User Guide.
*You must create a bucket policy on the destination bucket to * grant permissions to Amazon S3 to write objects to the bucket in the defined location. For an * example policy, see * Granting Permissions for Amazon S3 Inventory and Storage Class Analysis.
*To use this operation, you must have permissions to perform the
* s3:PutInventoryConfiguration action. The bucket owner has this permission
* by default and can grant this permission to others. For more information about permissions,
* see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3
* Resources in the Amazon S3 User Guide.
* Special Errors *
** HTTP 400 Bad Request Error *
** Code: InvalidArgument
** Cause: Invalid Argument
** HTTP 400 Bad Request Error *
** Code: TooManyConfigurations
** Cause: You are attempting to create a new configuration * but have already reached the 1,000-configuration limit.
** HTTP 403 Forbidden Error *
** Code: AccessDenied
*
* Cause: You are not the owner of the specified bucket,
* or you do not have the s3:PutInventoryConfiguration bucket
* permission to set the configuration on the bucket.
* Related Resources *
*