## Use Transfer Acceleration on Storage Operations

You can use transfer acceleration when calling the following APIs:

* `getUrl`
* `downloadData`
* `downloadFile`
* `uploadData`
* `uploadFile`

Set `useAccelerateEndpoint` to `true` in the corresponding Storage S3 plugin options to apply an accelerated S3 endpoint to the operation. For example, upload a file using transfer acceleration:

```dart
import 'package:amplify_storage_s3/amplify_storage_s3.dart';

Future<void> uploadFileUsingAcceleration(String filePath, String key) async {
  final localFile = AWSFile.fromPath(filePath);
  try {
    final uploadFileOperation = Amplify.Storage.uploadFile(
      localFile: localFile,
      key: key,
      options: const StorageUploadFileOptions(
        pluginOptions: S3UploadFilePluginOptions(
          useAccelerateEndpoint: true,
        ),
      ),
    );

    final result = await uploadFileOperation.result;
    safePrint('Uploaded file: ${result.uploadedItem.key}');
  } on StorageException catch (error) {
    safePrint('Something went wrong uploading file: ${error.message}');
  }
}
```
