S3 class

Constructors

S3({required String region, AwsClientCredentials? credentials, AwsClientCredentialsProvider? credentialsProvider, Client? client, String? endpointUrl})

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

abortMultipartUpload({required String bucket, required String key, required String uploadId, String? expectedBucketOwner, RequestPayer? requestPayer}) Future<AbortMultipartUploadOutput>
This operation aborts a multipart upload. After a multipart upload is aborted, no additional parts can be uploaded using that upload ID. The storage consumed by any previously uploaded parts will be freed. However, if any part uploads are currently in progress, those part uploads might or might not succeed. As a result, it might be necessary to abort a given multipart upload multiple times in order to completely free all storage consumed by all parts.
close() → void
Closes the internal HTTP client if none was provided at creation. If a client was passed as a constructor argument, this becomes a noop.
completeMultipartUpload({required String bucket, required String key, required String uploadId, String? expectedBucketOwner, CompletedMultipartUpload? multipartUpload, RequestPayer? requestPayer}) Future<CompleteMultipartUploadOutput>
Completes a multipart upload by assembling previously uploaded parts.
copyObject({required String bucket, required String copySource, required String key, ObjectCannedACL? acl, bool? bucketKeyEnabled, String? cacheControl, String? contentDisposition, String? contentEncoding, String? contentLanguage, String? contentType, String? copySourceIfMatch, DateTime? copySourceIfModifiedSince, String? copySourceIfNoneMatch, DateTime? copySourceIfUnmodifiedSince, String? copySourceSSECustomerAlgorithm, Uint8List? copySourceSSECustomerKey, String? copySourceSSECustomerKeyMD5, String? expectedBucketOwner, String? expectedSourceBucketOwner, DateTime? expires, String? grantFullControl, String? grantRead, String? grantReadACP, String? grantWriteACP, Map<String, String>? metadata, MetadataDirective? metadataDirective, ObjectLockLegalHoldStatus? objectLockLegalHoldStatus, ObjectLockMode? objectLockMode, DateTime? objectLockRetainUntilDate, RequestPayer? requestPayer, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5, String? sSEKMSEncryptionContext, String? sSEKMSKeyId, ServerSideEncryption? serverSideEncryption, StorageClass? storageClass, String? tagging, TaggingDirective? taggingDirective, String? websiteRedirectLocation}) Future<CopyObjectOutput>
Creates a copy of an object that is already stored in Amazon S3. All copy requests must be authenticated. Additionally, you must have read access to the source object and write access to the destination bucket. For more information, see REST Authentication. Both the Region that you want to copy the object from and the Region that you want to copy the object to must be enabled for your account.
createBucket({required String bucket, BucketCannedACL? acl, CreateBucketConfiguration? createBucketConfiguration, String? grantFullControl, String? grantRead, String? grantReadACP, String? grantWrite, String? grantWriteACP, bool? objectLockEnabledForBucket}) Future<CreateBucketOutput>
Creates a new S3 bucket. To create a bucket, you must register with Amazon S3 and have a valid AWS Access Key ID to authenticate requests. Anonymous requests are never allowed to create buckets. By creating the bucket, you become the bucket owner.
createMultipartUpload({required String bucket, required String key, ObjectCannedACL? acl, bool? bucketKeyEnabled, String? cacheControl, String? contentDisposition, String? contentEncoding, String? contentLanguage, String? contentType, String? expectedBucketOwner, DateTime? expires, String? grantFullControl, String? grantRead, String? grantReadACP, String? grantWriteACP, Map<String, String>? metadata, ObjectLockLegalHoldStatus? objectLockLegalHoldStatus, ObjectLockMode? objectLockMode, DateTime? objectLockRetainUntilDate, RequestPayer? requestPayer, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5, String? sSEKMSEncryptionContext, String? sSEKMSKeyId, ServerSideEncryption? serverSideEncryption, StorageClass? storageClass, String? tagging, String? websiteRedirectLocation}) Future<CreateMultipartUploadOutput>
This operation initiates a multipart upload and returns an upload ID. This upload ID is used to associate all of the parts in the specific multipart upload. You specify this upload ID in each of your subsequent upload part requests (see UploadPart). You also include this upload ID in the final request to either complete or abort the multipart upload request.
deleteBucket({required String bucket, String? expectedBucketOwner}) Future<void>
Deletes the S3 bucket. All objects (including all object versions and delete markers) in the bucket must be deleted before the bucket itself can be deleted.
deleteBucketAnalyticsConfiguration({required String bucket, required String id, String? expectedBucketOwner}) Future<void>
Deletes an analytics configuration for the bucket (specified by the analytics configuration ID).
deleteBucketCors({required String bucket, String? expectedBucketOwner}) Future<void>
Deletes the cors configuration information set for the bucket.
deleteBucketEncryption({required String bucket, String? expectedBucketOwner}) Future<void>
This implementation of the DELETE operation removes default encryption from the bucket. For information about the Amazon S3 default encryption feature, see Amazon S3 Default Bucket Encryption in the Amazon Simple Storage Service Developer Guide.
deleteBucketIntelligentTieringConfiguration({required String bucket, required String id}) Future<void>
Deletes the S3 Intelligent-Tiering configuration from the specified bucket.
deleteBucketInventoryConfiguration({required String bucket, required String id, String? expectedBucketOwner}) Future<void>
Deletes an inventory configuration (identified by the inventory ID) from the bucket.
deleteBucketLifecycle({required String bucket, String? expectedBucketOwner}) Future<void>
Deletes the lifecycle configuration from the specified bucket. Amazon S3 removes all the lifecycle configuration rules in the lifecycle subresource associated with the bucket. Your objects never expire, and Amazon S3 no longer automatically deletes any objects on the basis of rules contained in the deleted lifecycle configuration.
deleteBucketMetricsConfiguration({required String bucket, required String id, String? expectedBucketOwner}) Future<void>
Deletes a metrics configuration for the Amazon CloudWatch request metrics (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.
deleteBucketOwnershipControls({required String bucket, String? expectedBucketOwner}) Future<void>
Removes OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.
deleteBucketPolicy({required String bucket, String? expectedBucketOwner}) Future<void>
This implementation of the DELETE operation uses the policy subresource to delete the policy of a specified bucket. If you are using an identity other than the root user of the AWS account that owns the bucket, the calling identity must have the DeleteBucketPolicy permissions on the specified bucket and belong to the bucket owner's account to use this operation.
deleteBucketReplication({required String bucket, String? expectedBucketOwner}) Future<void>
Deletes the replication configuration from the bucket.
deleteBucketTagging({required String bucket, String? expectedBucketOwner}) Future<void>
Deletes the tags from the bucket.
deleteBucketWebsite({required String bucket, String? expectedBucketOwner}) Future<void>
This operation removes the website configuration for a bucket. Amazon S3 returns a 200 OK response upon successfully deleting a website configuration on the specified bucket. You will get a 200 OK response if the website configuration you are trying to delete does not exist on the bucket. Amazon S3 returns a 404 response if the bucket specified in the request does not exist.
deleteObject({required String bucket, required String key, bool? bypassGovernanceRetention, String? expectedBucketOwner, String? mfa, RequestPayer? requestPayer, String? versionId}) Future<DeleteObjectOutput>
Removes the null version (if there is one) of an object and inserts a delete marker, which becomes the latest version of the object. If there isn't a null version, Amazon S3 does not remove any objects.
deleteObjects({required String bucket, required Delete delete, bool? bypassGovernanceRetention, String? expectedBucketOwner, String? mfa, RequestPayer? requestPayer}) Future<DeleteObjectsOutput>
This operation enables you to delete multiple objects from a bucket using a single HTTP request. If you know the object keys that you want to delete, then this operation provides a suitable alternative to sending individual delete requests, reducing per-request overhead.
deleteObjectTagging({required String bucket, required String key, String? expectedBucketOwner, String? versionId}) Future<DeleteObjectTaggingOutput>
Removes the entire tag set from the specified object. For more information about managing object tags, see Object Tagging.
deletePublicAccessBlock({required String bucket, String? expectedBucketOwner}) Future<void>
Removes the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about permissions, see Permissions Related to Bucket Subresource Operations and Managing Access Permissions to Your Amazon S3 Resources.
getBucketAccelerateConfiguration({required String bucket, String? expectedBucketOwner}) Future<GetBucketAccelerateConfigurationOutput>
This implementation of the GET operation uses the accelerate subresource to return the Transfer Acceleration state of a bucket, which is either Enabled or Suspended. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers to and from Amazon S3.
getBucketAcl({required String bucket, String? expectedBucketOwner}) Future<GetBucketAclOutput>
This implementation of the GET operation uses the acl subresource to return the access control list (ACL) of a bucket. To use GET to return the ACL of the bucket, you must have READ_ACP access to the bucket. If READ_ACP permission is granted to the anonymous user, you can return the ACL of the bucket without using an authorization header.
getBucketAnalyticsConfiguration({required String bucket, required String id, String? expectedBucketOwner}) Future<GetBucketAnalyticsConfigurationOutput>
This implementation of the GET operation returns an analytics configuration (identified by the analytics configuration ID) from the bucket.
getBucketCors({required String bucket, String? expectedBucketOwner}) Future<GetBucketCorsOutput>
Returns the cors configuration information set for the bucket.
getBucketEncryption({required String bucket, String? expectedBucketOwner}) Future<GetBucketEncryptionOutput>
Returns the default encryption configuration for an Amazon S3 bucket. For information about the Amazon S3 default encryption feature, see Amazon S3 Default Bucket Encryption.
getBucketIntelligentTieringConfiguration({required String bucket, required String id}) Future<GetBucketIntelligentTieringConfigurationOutput>
Gets the S3 Intelligent-Tiering configuration from the specified bucket.
getBucketInventoryConfiguration({required String bucket, required String id, String? expectedBucketOwner}) Future<GetBucketInventoryConfigurationOutput>
Returns an inventory configuration (identified by the inventory configuration ID) from the bucket.
getBucketLifecycle({required String bucket, String? expectedBucketOwner}) Future<GetBucketLifecycleOutput>
Object Lifecycle Management
getBucketLifecycleConfiguration({required String bucket, String? expectedBucketOwner}) Future<GetBucketLifecycleConfigurationOutput>
Object Lifecycle Management
getBucketLocation({required String bucket, String? expectedBucketOwner}) Future<GetBucketLocationOutput>
Returns the Region the bucket resides in. You set the bucket's Region using the LocationConstraint request parameter in a CreateBucket request. For more information, see CreateBucket.
getBucketLogging({required String bucket, String? expectedBucketOwner}) Future<GetBucketLoggingOutput>
Returns the logging status of a bucket and the permissions users have to view and modify that status. To use GET, you must be the bucket owner.
getBucketMetricsConfiguration({required String bucket, required String id, String? expectedBucketOwner}) Future<GetBucketMetricsConfigurationOutput>
Gets a metrics configuration (specified by the metrics configuration ID) from the bucket. Note that this doesn't include the daily storage metrics.
getBucketNotification({required String bucket, String? expectedBucketOwner}) Future<NotificationConfigurationDeprecated>
No longer used, see GetBucketNotificationConfiguration.
getBucketNotificationConfiguration({required String bucket, String? expectedBucketOwner}) Future<NotificationConfiguration>
Returns the notification configuration of a bucket.
getBucketOwnershipControls({required String bucket, String? expectedBucketOwner}) Future<GetBucketOwnershipControlsOutput>
Retrieves OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.
getBucketPolicy({required String bucket, String? expectedBucketOwner}) Future<GetBucketPolicyOutput>
Returns the policy of a specified bucket. If you are using an identity other than the root user of the AWS account that owns the bucket, the calling identity must have the GetBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.
getBucketPolicyStatus({required String bucket, String? expectedBucketOwner}) Future<GetBucketPolicyStatusOutput>
Retrieves the policy status for an Amazon S3 bucket, indicating whether the bucket is public. In order to use this operation, you must have the s3:GetBucketPolicyStatus permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.
getBucketReplication({required String bucket, String? expectedBucketOwner}) Future<GetBucketReplicationOutput>
Returns the replication configuration of a bucket. For information about replication configuration, see Replication in the Amazon Simple Storage Service Developer Guide.
getBucketRequestPayment({required String bucket, String? expectedBucketOwner}) Future<GetBucketRequestPaymentOutput>
Returns the request payment configuration of a bucket. To use this version of the operation, you must be the bucket owner. For more information, see Requester Pays Buckets.
getBucketTagging({required String bucket, String? expectedBucketOwner}) Future<GetBucketTaggingOutput>
Returns the tag set associated with the bucket.
getBucketVersioning({required String bucket, String? expectedBucketOwner}) Future<GetBucketVersioningOutput>
Returns the versioning state of a bucket.
getBucketWebsite({required String bucket, String? expectedBucketOwner}) Future<GetBucketWebsiteOutput>
Returns the website configuration for a bucket. To host website on Amazon S3, you can configure a bucket as website by adding a website configuration. For more information about hosting websites, see Hosting Websites on Amazon S3.
getObject({required String bucket, required String key, String? expectedBucketOwner, String? ifMatch, DateTime? ifModifiedSince, String? ifNoneMatch, DateTime? ifUnmodifiedSince, int? partNumber, String? range, RequestPayer? requestPayer, String? responseCacheControl, String? responseContentDisposition, String? responseContentEncoding, String? responseContentLanguage, String? responseContentType, DateTime? responseExpires, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5, String? versionId}) Future<GetObjectOutput>
Retrieves objects from Amazon S3. To use GET, you must have READ access to the object. If you grant READ access to the anonymous user, you can return the object without using an authorization header.
getObjectAcl({required String bucket, required String key, String? expectedBucketOwner, RequestPayer? requestPayer, String? versionId}) Future<GetObjectAclOutput>
Returns the access control list (ACL) of an object. To use this operation, you must have READ_ACP access to the object.
getObjectLegalHold({required String bucket, required String key, String? expectedBucketOwner, RequestPayer? requestPayer, String? versionId}) Future<GetObjectLegalHoldOutput>
Gets an object's current Legal Hold status. For more information, see Locking Objects.
getObjectLockConfiguration({required String bucket, String? expectedBucketOwner}) Future<GetObjectLockConfigurationOutput>
Gets the Object Lock configuration for a bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see Locking Objects.
getObjectRetention({required String bucket, required String key, String? expectedBucketOwner, RequestPayer? requestPayer, String? versionId}) Future<GetObjectRetentionOutput>
Retrieves an object's retention settings. For more information, see Locking Objects.
getObjectTagging({required String bucket, required String key, String? expectedBucketOwner, String? versionId}) Future<GetObjectTaggingOutput>
Returns the tag-set of an object. You send the GET request against the tagging subresource associated with the object.
getObjectTorrent({required String bucket, required String key, String? expectedBucketOwner, RequestPayer? requestPayer}) Future<GetObjectTorrentOutput>
Returns torrent files from a bucket. BitTorrent can save you bandwidth when you're distributing large files. For more information about BitTorrent, see Using BitTorrent with Amazon S3. To use GET, you must have READ access to the object.
getPublicAccessBlock({required String bucket, String? expectedBucketOwner}) Future<GetPublicAccessBlockOutput>
Retrieves the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:GetBucketPublicAccessBlock permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy. For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of "Public".
headBucket({required String bucket, String? expectedBucketOwner}) Future<void>
This operation is useful to determine if a bucket exists and you have permission to access it. The operation returns a 200 OK if the bucket exists and you have permission to access it. Otherwise, the operation might return responses such as 404 Not Found and 403 Forbidden.
headObject({required String bucket, required String key, String? expectedBucketOwner, String? ifMatch, DateTime? ifModifiedSince, String? ifNoneMatch, DateTime? ifUnmodifiedSince, int? partNumber, String? range, RequestPayer? requestPayer, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5, String? versionId}) Future<HeadObjectOutput>
The HEAD operation retrieves metadata from an object without returning the object itself. This operation is useful if you're only interested in an object's metadata. To use HEAD, you must have READ access to the object.
listBucketAnalyticsConfigurations({required String bucket, String? continuationToken, String? expectedBucketOwner}) Future<ListBucketAnalyticsConfigurationsOutput>
Lists the analytics configurations for the bucket. You can have up to 1,000 analytics configurations per bucket.
listBucketIntelligentTieringConfigurations({required String bucket, String? continuationToken}) Future<ListBucketIntelligentTieringConfigurationsOutput>
Lists the S3 Intelligent-Tiering configuration from the specified bucket.
listBucketInventoryConfigurations({required String bucket, String? continuationToken, String? expectedBucketOwner}) Future<ListBucketInventoryConfigurationsOutput>
Returns a list of inventory configurations for the bucket. You can have up to 1,000 analytics configurations per bucket.
listBucketMetricsConfigurations({required String bucket, String? continuationToken, String? expectedBucketOwner}) Future<ListBucketMetricsConfigurationsOutput>
Lists the metrics configurations for the bucket. The metrics configurations are only for the request metrics of the bucket and do not provide information on daily storage metrics. You can have up to 1,000 configurations per bucket.
listBuckets() Future<ListBucketsOutput>
Returns a list of all buckets owned by the authenticated sender of the request.
listMultipartUploads({required String bucket, String? delimiter, EncodingType? encodingType, String? expectedBucketOwner, String? keyMarker, int? maxUploads, String? prefix, String? uploadIdMarker}) Future<ListMultipartUploadsOutput>
This operation lists in-progress multipart uploads. An in-progress multipart upload is a multipart upload that has been initiated using the Initiate Multipart Upload request, but has not yet been completed or aborted.
listObjects({required String bucket, String? delimiter, EncodingType? encodingType, String? expectedBucketOwner, String? marker, int? maxKeys, String? prefix, RequestPayer? requestPayer}) Future<ListObjectsOutput>
Returns some or all (up to 1,000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or invalid XML. Be sure to design your application to parse the contents of the response and handle it appropriately. The following operations are related to ListObjects:
listObjectsV2({required String bucket, String? continuationToken, String? delimiter, EncodingType? encodingType, String? expectedBucketOwner, bool? fetchOwner, int? maxKeys, String? prefix, RequestPayer? requestPayer, String? startAfter}) Future<ListObjectsV2Output>
Returns some or all (up to 1,000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. A 200 OK response can contain valid or invalid XML. Make sure to design your application to parse the contents of the response and handle it appropriately.
listObjectVersions({required String bucket, String? delimiter, EncodingType? encodingType, String? expectedBucketOwner, String? keyMarker, int? maxKeys, String? prefix, String? versionIdMarker}) Future<ListObjectVersionsOutput>
Returns metadata about all versions of the objects in a bucket. You can also use request parameters as selection criteria to return metadata about a subset of all the object versions. To use this operation, you must have READ access to the bucket.
listParts({required String bucket, required String key, required String uploadId, String? expectedBucketOwner, int? maxParts, int? partNumberMarker, RequestPayer? requestPayer}) Future<ListPartsOutput>
Lists the parts that have been uploaded for a specific multipart upload. This operation must include the upload ID, which you obtain by sending the initiate multipart upload request (see CreateMultipartUpload). This request returns a maximum of 1,000 uploaded parts. The default number of parts returned is 1,000 parts. You can restrict the number of parts returned by specifying the max-parts request parameter. If your multipart upload consists of more than 1,000 parts, the response returns an IsTruncated field with the value of true, and a NextPartNumberMarker element. In subsequent ListParts requests you can include the part-number-marker query string parameter and set its value to the NextPartNumberMarker field value from the previous response.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
putBucketAccelerateConfiguration({required AccelerateConfiguration accelerateConfiguration, required String bucket, String? expectedBucketOwner}) Future<void>
Sets the accelerate configuration of an existing bucket. Amazon S3 Transfer Acceleration is a bucket-level feature that enables you to perform faster data transfers to Amazon S3.
putBucketAcl({required String bucket, BucketCannedACL? acl, AccessControlPolicy? accessControlPolicy, String? contentMD5, String? expectedBucketOwner, String? grantFullControl, String? grantRead, String? grantReadACP, String? grantWrite, String? grantWriteACP}) Future<void>
Sets the permissions on an existing bucket using access control lists (ACL). For more information, see Using ACLs. To set the ACL of a bucket, you must have WRITE_ACP permission.
putBucketAnalyticsConfiguration({required AnalyticsConfiguration analyticsConfiguration, required String bucket, required String id, String? expectedBucketOwner}) Future<void>
Sets an analytics configuration for the bucket (specified by the analytics configuration ID). You can have up to 1,000 analytics configurations per bucket.
putBucketCors({required String bucket, required CORSConfiguration cORSConfiguration, String? contentMD5, String? expectedBucketOwner}) Future<void>
Sets the cors configuration for your bucket. If the configuration exists, Amazon S3 replaces it.
putBucketEncryption({required String bucket, required ServerSideEncryptionConfiguration serverSideEncryptionConfiguration, String? contentMD5, String? expectedBucketOwner}) Future<void>
This operation uses the encryption subresource to configure default encryption and Amazon S3 Bucket Key for an existing bucket.
putBucketIntelligentTieringConfiguration({required String bucket, required String id, required IntelligentTieringConfiguration intelligentTieringConfiguration}) Future<void>
Puts a S3 Intelligent-Tiering configuration to the specified bucket.
putBucketInventoryConfiguration({required String bucket, required String id, required InventoryConfiguration inventoryConfiguration, String? expectedBucketOwner}) Future<void>
This implementation of the PUT operation adds an inventory configuration (identified by the inventory ID) to the bucket. You can have up to 1,000 inventory configurations per bucket.
putBucketLifecycle({required String bucket, String? contentMD5, String? expectedBucketOwner, LifecycleConfiguration? lifecycleConfiguration}) Future<void>
Object Lifecycle Management
putBucketLifecycleConfiguration({required String bucket, String? expectedBucketOwner, BucketLifecycleConfiguration? lifecycleConfiguration}) Future<void>
Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. For information about lifecycle configuration, see Managing Access Permissions to Your Amazon S3 Resources. Rules
putBucketLogging({required String bucket, required BucketLoggingStatus bucketLoggingStatus, String? contentMD5, String? expectedBucketOwner}) Future<void>
Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. All logs are saved to buckets in the same AWS Region as the source bucket. To set the logging status of a bucket, you must be the bucket owner.
putBucketMetricsConfiguration({required String bucket, required String id, required MetricsConfiguration metricsConfiguration, String? expectedBucketOwner}) Future<void>
Sets a metrics configuration (specified by the metrics configuration ID) for the bucket. You can have up to 1,000 metrics configurations per bucket. If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased.
putBucketNotification({required String bucket, required NotificationConfigurationDeprecated notificationConfiguration, String? contentMD5, String? expectedBucketOwner}) Future<void>
No longer used, see the PutBucketNotificationConfiguration operation.
putBucketNotificationConfiguration({required String bucket, required NotificationConfiguration notificationConfiguration, String? expectedBucketOwner}) Future<void>
Enables notifications of specified events for a bucket. For more information about event notifications, see Configuring Event Notifications.
putBucketOwnershipControls({required String bucket, required OwnershipControls ownershipControls, String? contentMD5, String? expectedBucketOwner}) Future<void>
Creates or modifies OwnershipControls for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketOwnershipControls permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy.
putBucketPolicy({required String bucket, required String policy, bool? confirmRemoveSelfBucketAccess, String? contentMD5, String? expectedBucketOwner}) Future<void>
Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the AWS account that owns the bucket, the calling identity must have the PutBucketPolicy permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.
putBucketReplication({required String bucket, required ReplicationConfiguration replicationConfiguration, String? contentMD5, String? expectedBucketOwner, String? token}) Future<void>
Creates a replication configuration or replaces an existing one. For more information, see Replication in the Amazon S3 Developer Guide. Specify the replication configuration in the request body. In the replication configuration, you provide the name of the destination bucket or buckets where you want Amazon S3 to replicate objects, the IAM role that Amazon S3 can assume to replicate objects on your behalf, and other relevant information.
putBucketRequestPayment({required String bucket, required RequestPaymentConfiguration requestPaymentConfiguration, String? contentMD5, String? expectedBucketOwner}) Future<void>
Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person requesting the download will be charged for the download. For more information, see Requester Pays Buckets.
putBucketTagging({required String bucket, required Tagging tagging, String? contentMD5, String? expectedBucketOwner}) Future<void>
Sets the tags for a bucket.
putBucketVersioning({required String bucket, required VersioningConfiguration versioningConfiguration, String? contentMD5, String? expectedBucketOwner, String? mfa}) Future<void>
Sets the versioning state of an existing bucket. To set the versioning state, you must be the bucket owner.
putBucketWebsite({required String bucket, required WebsiteConfiguration websiteConfiguration, String? contentMD5, String? expectedBucketOwner}) Future<void>
Sets the configuration of the website that is specified in the website subresource. To configure a bucket as a website, you can add this subresource on the bucket with website configuration information such as the file name of the index document and any redirect rules. For more information, see Hosting Websites on Amazon S3.
putObject({required String bucket, required String key, ObjectCannedACL? acl, Uint8List? body, bool? bucketKeyEnabled, String? cacheControl, String? contentDisposition, String? contentEncoding, String? contentLanguage, int? contentLength, String? contentMD5, String? contentType, String? expectedBucketOwner, DateTime? expires, String? grantFullControl, String? grantRead, String? grantReadACP, String? grantWriteACP, Map<String, String>? metadata, ObjectLockLegalHoldStatus? objectLockLegalHoldStatus, ObjectLockMode? objectLockMode, DateTime? objectLockRetainUntilDate, RequestPayer? requestPayer, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5, String? sSEKMSEncryptionContext, String? sSEKMSKeyId, ServerSideEncryption? serverSideEncryption, StorageClass? storageClass, String? tagging, String? websiteRedirectLocation}) Future<PutObjectOutput>
Adds an object to a bucket. You must have WRITE permissions on a bucket to add an object to it.
putObjectAcl({required String bucket, required String key, ObjectCannedACL? acl, AccessControlPolicy? accessControlPolicy, String? contentMD5, String? expectedBucketOwner, String? grantFullControl, String? grantRead, String? grantReadACP, String? grantWrite, String? grantWriteACP, RequestPayer? requestPayer, String? versionId}) Future<PutObjectAclOutput>
Uses the acl subresource to set the access control list (ACL) permissions for a new or existing object in an S3 bucket. You must have WRITE_ACP permission to set the ACL of an object. For more information, see What permissions can I grant? in the Amazon Simple Storage Service Developer Guide.
putObjectLegalHold({required String bucket, required String key, String? contentMD5, String? expectedBucketOwner, ObjectLockLegalHold? legalHold, RequestPayer? requestPayer, String? versionId}) Future<PutObjectLegalHoldOutput>
Applies a Legal Hold configuration to the specified object.
putObjectLockConfiguration({required String bucket, String? contentMD5, String? expectedBucketOwner, ObjectLockConfiguration? objectLockConfiguration, RequestPayer? requestPayer, String? token}) Future<PutObjectLockConfigurationOutput>
Places an Object Lock configuration on the specified bucket. The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket.
putObjectRetention({required String bucket, required String key, bool? bypassGovernanceRetention, String? contentMD5, String? expectedBucketOwner, RequestPayer? requestPayer, ObjectLockRetention? retention, String? versionId}) Future<PutObjectRetentionOutput>
Places an Object Retention configuration on an object.
putObjectTagging({required String bucket, required String key, required Tagging tagging, String? contentMD5, String? expectedBucketOwner, String? versionId}) Future<PutObjectTaggingOutput>
Sets the supplied tag-set to an object that already exists in a bucket.
putPublicAccessBlock({required String bucket, required PublicAccessBlockConfiguration publicAccessBlockConfiguration, String? contentMD5, String? expectedBucketOwner}) Future<void>
Creates or modifies the PublicAccessBlock configuration for an Amazon S3 bucket. To use this operation, you must have the s3:PutBucketPublicAccessBlock permission. For more information about Amazon S3 permissions, see Specifying Permissions in a Policy. For more information about when Amazon S3 considers a bucket or an object public, see The Meaning of "Public".
restoreObject({required String bucket, required String key, String? expectedBucketOwner, RequestPayer? requestPayer, RestoreRequest? restoreRequest, String? versionId}) Future<RestoreObjectOutput>
Restores an archived copy of an object back into Amazon S3
selectObjectContent({required String bucket, required String expression, required ExpressionType expressionType, required InputSerialization inputSerialization, required String key, required OutputSerialization outputSerialization, String? expectedBucketOwner, RequestProgress? requestProgress, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5, ScanRange? scanRange}) Future<SelectObjectContentOutput>
This operation filters the contents of an Amazon S3 object based on a simple structured query language (SQL) statement. In the request, along with the SQL expression, you must also specify a data serialization format (JSON, CSV, or Apache Parquet) of the object. Amazon S3 uses this format to parse object data into records, and returns only records that match the specified SQL expression. You must also specify the data serialization format for the response.
toString() String
A string representation of this object.
inherited
uploadPart({required String bucket, required String key, required int partNumber, required String uploadId, Uint8List? body, int? contentLength, String? contentMD5, String? expectedBucketOwner, RequestPayer? requestPayer, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5}) Future<UploadPartOutput>
Uploads a part in a multipart upload. You must initiate a multipart upload (see CreateMultipartUpload) before you can upload any part. In response to your initiate request, Amazon S3 returns an upload ID, a unique identifier, that you must include in your upload part request.
uploadPartCopy({required String bucket, required String copySource, required String key, required int partNumber, required String uploadId, String? copySourceIfMatch, DateTime? copySourceIfModifiedSince, String? copySourceIfNoneMatch, DateTime? copySourceIfUnmodifiedSince, String? copySourceRange, String? copySourceSSECustomerAlgorithm, Uint8List? copySourceSSECustomerKey, String? copySourceSSECustomerKeyMD5, String? expectedBucketOwner, String? expectedSourceBucketOwner, RequestPayer? requestPayer, String? sSECustomerAlgorithm, Uint8List? sSECustomerKey, String? sSECustomerKeyMD5}) Future<UploadPartCopyOutput>
Uploads a part by copying data from an existing object as data source. You specify the data source by adding the request header x-amz-copy-source in your request and a byte range by adding the request header x-amz-copy-source-range in your request.

Operators

operator ==(Object other) bool
The equality operator.
inherited