diff --git a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc index e25f66e301..516bc0bb98 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc @@ -1,5 +1,4 @@ = Amazon S3 Connector 6.3 Additional Configuration - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector-config-topics.adoc [[prereq]] diff --git a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-examples.adoc b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-examples.adoc index 5a8c93333b..bcd0007dde 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-examples.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-examples.adoc @@ -1,5 +1,4 @@ = Amazon S3 Connector 6.3 Examples - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector-examples.adoc The following example shows how to store an image from a URL in Amazon S3, and retrieve and display the image. diff --git a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-reference.adoc b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-reference.adoc index 597389b582..536a35abc9 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-reference.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-reference.adoc @@ -1,5 +1,4 @@ = Amazon S3 Connector 6.3 Reference - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector-reference.adoc Anypoint Connector for Amazon S3 (Amazon S3 Connector) provides connectivity to the Amazon S3 API, enabling you to interface with Amazon S3 to store objects, download and use data with other AWS services, and build applications that require internet storage. diff --git a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-studio.adoc b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-studio.adoc index 08b65aeabc..da986b68de 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-studio.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-studio.adoc @@ -1,5 +1,4 @@ = Using Anypoint Studio to Configure Amazon S3 Connector 6.3 - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector-studio.adoc Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. diff --git a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc index b4ff2f7479..1ddfa4e10d 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc @@ -1,5 +1,4 @@ = Upgrading and Migrating Amazon S3 Connector to Version 6.x - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector-upgrade-migrate.adoc Upgrade Anypoint Connector for Amazon S3 (Amazon S3 Connector) to version 6.x. diff --git a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc index a8bf7f8a4e..d0277396f3 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc @@ -1,5 +1,4 @@ = Amazon S3 Connector 6.3 XML and Maven Support - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector-xml-maven.adoc Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Studio: diff --git a/amazon-s3/6.3/modules/ROOT/pages/index.adoc b/amazon-s3/6.3/modules/ROOT/pages/index.adoc index c7c136bd09..7c215a045c 100644 --- a/amazon-s3/6.3/modules/ROOT/pages/index.adoc +++ b/amazon-s3/6.3/modules/ROOT/pages/index.adoc @@ -1,5 +1,4 @@ = Amazon S3 Connector 6.3 - Mule 4 -:page-aliases: connectors::amazon/amazon-s3-connector.adoc Anypoint Connector for Amazon S3 (Amazon S3 Connector) provides connectivity to the Amazon S3 API, enabling you to interface with Amazon S3 to store objects, download and use data with other AWS services, and build applications that require internet storage. diff --git a/amazon-s3/6.4/antora.yml b/amazon-s3/6.4/antora.yml new file mode 100644 index 0000000000..498c2737c1 --- /dev/null +++ b/amazon-s3/6.4/antora.yml @@ -0,0 +1,19 @@ +name: amazon-s3-connector +version: '6.4' +display_version: 6.4 (Mule 4) +title: Amazon S3 Connector +nav: +- modules/ROOT/nav.adoc +asciidoc: + attributes: + page-component-desc: Provides connectivity to the Amazon S3 API, enabling you to interface with Amazon S3 to store objects, download and use data with other AWS services, and build applications that require internet storage. + page-connector-type: Connector + page-connector-level: Select + page-exchange-group-id: com.mulesoft.connectors + page-exchange-asset-id: mule-amazon-s3-connector + page-runtime-version: 4.3.0 + page-release-notes-page: release-notes::connector/amazon-s3-connector-release-notes-mule-4.adoc + page-vendor-name: amazon + page-vendor-title: Amazon + page-service-name: Amazon S3 + page-connector-name: s3 diff --git a/amazon-s3/6.4/modules/ROOT/images/amazon-s3-01.png b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-01.png new file mode 100644 index 0000000000..c379eb3f07 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-01.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/amazon-s3-08.png b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-08.png new file mode 100644 index 0000000000..4163305801 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-08.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/amazon-s3-09.png b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-09.png new file mode 100644 index 0000000000..cb44ec0d26 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-09.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/amazon-s3-10.png b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-10.png new file mode 100644 index 0000000000..5072b07d23 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/amazon-s3-10.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/create_bucket.png b/amazon-s3/6.4/modules/ROOT/images/create_bucket.png new file mode 100644 index 0000000000..8cc266df79 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/create_bucket.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/delete_bucket.png b/amazon-s3/6.4/modules/ROOT/images/delete_bucket.png new file mode 100644 index 0000000000..58c308a41e Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/delete_bucket.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/delete_object.png b/amazon-s3/6.4/modules/ROOT/images/delete_object.png new file mode 100644 index 0000000000..651ba74265 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/delete_object.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/flow.png b/amazon-s3/6.4/modules/ROOT/images/flow.png new file mode 100644 index 0000000000..132864e207 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/flow.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/get_object.png b/amazon-s3/6.4/modules/ROOT/images/get_object.png new file mode 100644 index 0000000000..3e12801d9b Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/get_object.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/put_object.png b/amazon-s3/6.4/modules/ROOT/images/put_object.png new file mode 100644 index 0000000000..ad4e961159 Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/put_object.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/request.png b/amazon-s3/6.4/modules/ROOT/images/request.png new file mode 100644 index 0000000000..55c66df05f Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/request.png differ diff --git a/amazon-s3/6.4/modules/ROOT/images/s3_config.png b/amazon-s3/6.4/modules/ROOT/images/s3_config.png new file mode 100644 index 0000000000..f535523c1d Binary files /dev/null and b/amazon-s3/6.4/modules/ROOT/images/s3_config.png differ diff --git a/amazon-s3/6.4/modules/ROOT/nav.adoc b/amazon-s3/6.4/modules/ROOT/nav.adoc new file mode 100644 index 0000000000..4f201ac130 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/nav.adoc @@ -0,0 +1,9 @@ +.xref:index.adoc[Amazon S3 Connector] +* xref:index.adoc[Amazon S3 Connector Overview] +* xref:amazon-s3-connector-upgrade-migrate.adoc[Upgrading and Migrating Amazon S3 Connector] +* xref:amazon-s3-connector-studio.adoc[Using Anypoint Studio to Configure Amazon S3 Connector] +* xref:amazon-s3-connector-config-topics.adoc[Amazon S3 Connector Additional Configuration Information] +* xref:amazon-s3-connector-xml-maven.adoc[Amazon S3 Connector XML and Maven Support] +* xref:amazon-s3-connector-examples.adoc[Amazon S3 Connector Examples] +* xref:amazon-s3-connector-troubleshooting.adoc[Troubleshooting Amazon S3 Connector] +* xref:amazon-s3-connector-reference.adoc[Amazon S3 Connector Reference] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc new file mode 100644 index 0000000000..f777f08d34 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-config-topics.adoc @@ -0,0 +1,176 @@ += Amazon S3 Connector 6.4 Additional Configuration - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector-config-topics.adoc + + +[[prereq]] +== Before You Begin for Source Operations + +Amazon S3 source operations use Amazon SQS for notifying when a new object is created or deleted in an S3 bucket. + +There are multiple scenarios for the *On New Object* and *On Deleted Object* Amazon S3 sources: + +. The <> and specified +. The <> by the source +. The <> by the source + +[[queue-is-created]] +== Queue Is Already Created + +To correctly use a source for a queue that already exists, the user must have these actions enabled for the Amazon SQS queue: + +[source,json,linenums] +---- +{ + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "VisualEditor0", + "Effect": "Allow", + "Action": [ + "sqs:DeleteMessage", + "sqs:GetQueueUrl", + "sqs:ReceiveMessage", + "sqs:GetQueueAttributes" + ], + "Resource": "arn:aws:sqs:REGION:ACCOUNT_ID:QUEUE_NAME" + } + ] +} +---- + +Additionally, to enable the queue to receive messages when a new object is created or deleted in an S3 bucket, create a policy for the queue in this format: + +[source,json,linenums] +---- +{ + "Version": "2012-10-17", + "Id": "arn:aws:sqs:REGION:ACCOUNT_ID:QUEUE_NAME/SQSDefaultPolicy", + "Statement": [ + { + "Sid": "Sid1593770403887", + "Effect": "Allow", + "Principal": "*", + "Action": "SQS:SendMessage", + "Resource": "arn:aws:sqs:REGION:ACCOUNT_ID:QUEUE_NAME", + "Condition": { + "ArnLike": { + "aws:SourceArn": "arn:aws:s3:::BUCKET_NAME" + } + } + } + ] +} +---- + +[[queue-created-by-source]] +== Queue Is Created by Source + +If the queue is created by the source, the queue name has the prefix `MULE-S3-TRIGGER`. + +When the queue is created by the source, the user must have permission to both create a queue and set the queue attributes: + +[source,json,linenums] +---- +{ + "Version": "2012-10-17", + "Statement": [ + { + "Sid": "VisualEditor0", + "Effect": "Allow", + "Action": [ + "sqs:DeleteMessage", + "sqs:ReceiveMessage", + "sqs:GetQueueAttributes", + "sqs:CreateQueue", + "sqs:SetQueueAttributes", + "sqs:GetQueueUrl" + ], + "Resource": "arn:aws:sqs:REGION:ACCOUNT_ID:MULE-S3-TRIGGER-*" + } + ] +} +---- + +When the queue is created by the source, an SQS policy is added to the queue in the following format when the S3 object is created or deleted in the bucket : + + +[source,json,linenums] +---- +{ + "Version": "2012-10-17", + "Id": "example-ID", + "Statement": [ + { + "Sid": "example-statement-ID", + "Effect": "Allow", + "Principal": { + "AWS": "*" + }, + "Action": "SQS:SendMessage", + "Resource":QUEUE_ARN, + "Condition": { + "ArnLike": { + "aws:SourceArn": "BUCKET_ARN" + } + } + } + ] +} +---- + +[[configuration-is-created]] +== Notification Configuration for S3 Bucket Events is Already Created + +To correctly use a source for a notification configuration that already exists, you must specify the notification configuration name in the ADVANCED tab of the source: + +[source,xml,linenums] +---- + + + + + +---- + +== S3 Policy Bucket + +For the S3 policy, use this format for all cases: + +[source,json,linenums] +---- +{ + "Version": "2012-10-17", + "Id": "Policy1593761427184", + "Statement": [ + { + "Sid": "Stmt1593760119344", + "Effect": "Allow", + "Principal": { + "AWS": "arn:aws:iam::ACCOUNT_ID:user/test" + }, + "Action": "SPECIFIC_ACTION", + "Resource": "arn:aws:s3:::BUCKET_NAME/*" + }, + { + "Sid": "Stmt1593760259223", + "Effect": "Allow", + "Principal": { + "AWS": "arn:aws:iam::ACCOUNT_ID:user/test" + }, + "Action": ["s3:PutBucketNotification", "s3:GetBucketNotification"], + "Resource": "arn:aws:s3:::BUCKET_NAME" + } + ] +} +---- + +In this example, the *SPECIFIC_ACTION* is `s3:PutObject` or `s3:DeleteObject`, depending on the specified source operation. + +== Next Step + +After you complete configuring the connector, you can try the xref:amazon-s3-connector-examples.adoc[Example]. + +== See Also + +* https://help.mulesoft.com[MuleSoft Help Center] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-examples.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-examples.adoc new file mode 100644 index 0000000000..ff06caec16 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-examples.adoc @@ -0,0 +1,172 @@ += Amazon S3 Connector 6.4 Examples - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector-examples.adoc + +The following example shows how to store an image from a URL in Amazon S3, and retrieve and display the image. + +== Before You Begin + +For this example to work in Anypoint Studio, you must provide Amazon Web Services credentials. You can either: + +* Replace the variables with their values in the code. +* Provide the values for each variable in the `src/main/resources/mule-artifact.properties` file. + +[[store-and-retrieve]] +== Example Steps + +image::flow.png["Studio 7 Visual Studio Icon Flow. The flow shows HTTP Listener, Create bucket, Get MuleSoft logo, Create logo object in S3 bucket, Get Image, Delete object and Delete S3 bucket."] + +. Create a new Mule project in Studio. +. Drag an *HTTP > Listener* into the canvas, and select it to open the properties editor. +. Add a new HTTP Listener Config global element: +.. In *General Settings*, click the *+* button: +.. Configure the following HTTP parameters, retain the default values for the other fields, and click *OK*: ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Name |HTTP_Listener_Configuration +|Host |127.0.0.1 +|Port |8081 +|=== ++ +.. Reference the *HTTP Listener Configuration* global element. In the General tab, specify the `/` Path. +. Drag an Amazon S3 connector into the flow, and double-click the connector to open its properties editor. +. If you don't have an existing Amazon S3 connector global element to choose, click the *+* sign next to *Extension Configuration* field. +. Configure the global element properties, and then click *OK*. +. Configure the connector parameters: ++ +image::s3_config.png[Connector Properties - General tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Name |Name for the connector instance, such as `Amazon_S3_Configuration`. +|General |General configuration for the connector. +|Region Endpoint |Region, for example, `us-east-1` (default). +|Access key |Connection access key. +|Secret key |Connection secret key. +|=== ++ +. Drag the *Create Bucket* operation into the flow. ++ +image::create_bucket.png[S3 Connector Create Bucket in S3 General Tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Display Name |Display name of your choice, such as `Create new bucket`. +|Connector configuration |Global configuration for the connector. +|Bucket name |Name of the newly created bucket. +|ACL |PRIVATE (default) access control list. A canned ACL is a predefined grant. +|=== ++ +. Add an HTTP > Connector to request the MuleSoft logo from MuleSoft. ++ +image::request.png[HTTP > Connector - General Tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Display Name |Name for the connector instance. In this example, HTTP > Connector is named `Get MuleSoft logo`. +|Configuration |Configuration with the *Host* as `developer.mulesoft.com`, *Protocol* as `HTTPS`, and *Port* as `80`. +|URL or Path |`/sites/all/themes/muletheme/images/mulesoft_dev_logo_v2.svg`. +|=== ++ +. Drag the *Put Object* operation into the flow to create the requested MuleSoft logo in the selected Amazon S3 bucket. ++ +image::put_object.png[S3 Connector Create Logo Object in S3 Bucket General Tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Display Name |Display name of your choice, such as `Create logo object in S3 bucket`. +|Connector Configuration |Global configuration for the connector. +|Bucket Name |Name of the bucket in which the new object is created. +|Key |Name of the newly created object. +|Content |Content of the object. +|Object ACL |Access control list. +|=== ++ +. Drag the *Get Object* operation into the flow to get the newly created MuleSoft logo image object from the bucket. ++ +image::get_object.png[S3 Connector Get Image General Tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Display Name |Display name of your choice, such as `Get Image`. +|Connector Configuration |Global configuration for the connector. +|Bucket Name |Name of the bucket in which an object is stored. +|Object Key |Name of the object to get. +|=== ++ +. Drag the *Delete Object* operation into the flow to delete the object. Because the *Delete Object* operation’s return type is void, the payload contains the object returned by the *Get Object* operation. ++ +image::delete_object.png[S3 Connector Delete S3 Bucket General Tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Display Name |Display name of your choice, such as `Delete created object`. +|Connector Configuration |Global configuration for the connector. +|Bucket Name |Name of the bucket in which an object is stored. +|Object Name |Name of the object to delete. +|=== ++ +. Drag the *Delete Bucket* operation into the flow to delete the bucket. Because the *Delete Bucket* operation’s return type is void, the payload contains the object returned by the *Get Object* operation. ++ +image::delete_bucket.png[S3 Connector Delete S3 Bucket General Tab] ++ +[%header%autowidth.spread] +|=== +|Field |Value +|Display Name |Display name of your choice, such as `Delete created bucket`. +|Connector Configuration |Global configuration for the connector. +|Bucket Name |Name of the bucket to delete. +|=== + +== XML for the Example + +Paste this code into your Studio XML editor to quickly load the flow for this example into your Mule app: + +[source,xml,linenums] +---- + + + + + + + + + + + + + + + + + + + + + + + +---- + +== See Also + +* https://help.mulesoft.com[MuleSoft Help Center] +* http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html#using-the-default-credential-provider-chain[Amazon Default Provider Credential Chain] +* http://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html[Amazon Access Control List (ACL) overview] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-reference.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-reference.adoc new file mode 100644 index 0000000000..2d852afd36 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-reference.adoc @@ -0,0 +1,3778 @@ += Amazon S3 Connector 6.4 Reference - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector-reference.adoc + +Anypoint Connector for Amazon S3 (Amazon S3 Connector) provides connectivity to the Amazon S3 API, enabling you to interface with Amazon S3 to store objects, download and use data with other AWS services, and build applications that require internet storage. + + +[[config]] +== Configuration + +Default Configuration for Amazon S3 Connector. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +|Name | String | Name for this configuration. Connectors reference the configuration with this name. | | x +| Connection a| <> + | Connection types for this configuration. | | x +| Name a| String | ID used to reference this configuration. | | x +| Expiration Policy a| <> | Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. | | +|=== + +[[Config_Connection]] +=== Connection (S3) Connection Type + +Uses the S3 connection type, which covers both the Basic and Role connections. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Access Key a| String | Access key provided by Amazon. | | x +| Secret Key a| String | Secret key provided by Amazon. | | x +| Region Endpoint a| String | Topic region endpoint. | `us-east-1` | +| Connection Timeout a| Number | How long the connector waits before timing out when establishing a connection to the remote service. A value of `0` means infinity and is not recommended. | `50` | +| Connection Timeout Unit a| Enumeration, one of: + +** NANOSECONDS +** MICROSECONDS +** MILLISECONDS +** SECONDS +** MINUTES +** HOURS +** DAYS | Time unit for the *Connection Timeout* field. | `SECONDS` | +| Response Timeout a| Number | How long Mule waits for a response to complete before the request times out. | `30` | +| Response Timeout Unit a| Enumeration, one of: + +** NANOSECONDS +** MICROSECONDS +** MILLISECONDS +** SECONDS +** MINUTES +** HOURS +** DAYS | Time unit for the *Response Timeout* field. | `SECONDS` | +| Role a| <> | Role configuration. | | +| Try Default AWSCredentials Provider Chain a| Boolean | If `true`, obtains credentials from the AWS environment. For more information, refer to https://docs.aws.amazon.com/sdk-for-java/v2/developer-guide/credentials.html[Provide Temporary Credentials to the SDK +]. | `false` | +| Custom Service Endpoint a| String | Sets a custom service endpoint. Useful when a non-standard service endpoint is required, such as a VPC endpoint. For local connections, set this field to `\http://localhost:8000/`. | | +| Test Connection Bucket Name a| String |Validates the AWS S3 client connection using the provided bucket name. This field is mandatory when you specify a FIPS-compliant endpoint in the Custom Service Endpoint field. | | +| Custom SQS Endpoint a| String | Sets a custom SQS endpoint. Useful when a non-standard SQS endpoint (used by sources) is required, such as a VPC endpoint. | | +| Proxy Configuration a| <> | Proxy connection settings for outbound connections. This setting applies to the sources and checkpoint operation. It does not affect the put record operation. | | +| TLS Configuration a| <> | Configures TLS. If using the HTTPS protocol, you must configure TLS. | | +| Reconnection a| <> | Configures a reconnection strategy to use when a connector operation fails to connect to an external server. | | +|=== + +== Sources + +[IMPORTANT] +You must perform additional configuration to use the sources provided by Amazon S3 Connector. Refer to the xref:amazon-s3-connector-config-topics.adoc#prereq[prerequisites] before configuring your sources. + +* <> +* <> + +[[DeletedObjectListener]] +=== On Deleted Object +`` + +[IMPORTANT] +You must perform additional configuration to use the sources provided by Amazon S3 Connector. Refer to the xref:amazon-s3-connector-config-topics.adoc#prereq[prerequisites] before configuring your sources. + +Initiates a Mule flow when an object is deleted from an Amazon S3 bucket, and sends an SQS notification about the deleted object. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket Name a| String | Name of the bucket to which the source listens for changes. | | x +| Folder a| String | Name of the folder in the specified bucket. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Primary Node Only a| Boolean | Determines whether to execute this source on only the primary node when running Mule instances in a cluster. | | +| Scheduling Strategy a| scheduling-strategy | Configures the scheduler that triggers the polling.| | x +| Redelivery Policy a| <> | Defines a policy for processing the redelivery of the same message. | | +| Queue Name a| String | Amazon SQS queue name used to notify users when a new object is created or deleted in an S3 bucket. | | +| Configuration Name a| String | Specifies the name of the notification configuration to use in the source. The notification configuration must exist and must be of Event Type 's3:ObjectCreated:*' with the *On New Object* source and of Event Type 's3:ObjectRemoved:*' with the *On Deleted Object* source. Configurations with events of the same type cannot have overlapping prefix or suffix configurations. | | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + + + +[[NewObjectListener]] +=== On New Object +`` + + +[IMPORTANT] +You must perform additional configuration to use the sources provided by Amazon S3 Connector. Refer to the xref:amazon-s3-connector-config-topics.adoc#prereq[prerequisites] before configuring your sources. + +Initiates a Mule flow when an object is created in an Amazon S3 bucket, and sends an SQS notification about the new object. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket Name a| String | Name of the bucket to which the source listens for changes. | | x +| Folder a| String | Name of the folder in the specified bucket. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Primary Node Only a| Boolean | Determines whether to execute this source on only the primary node when running Mule instances in a cluster. | | +| Scheduling Strategy a| scheduling-strategy | Configures the scheduler that triggers the polling.| | x +| Redelivery Policy a| <> | Defines a policy for processing the redelivery of the same message. | | +| Queue Name a| String | Amazon SQS queue name used to notify users when a new object is created or deleted in an S3 bucket. | | +| Configuration Name a| String | Specifies the name of the notification configuration to use in the source. The notification configuration must exist and must be of Event Type 's3:ObjectCreated:*' with the *On New Object* source and of Event Type 's3:ObjectRemoved:*' with the *On Deleted Object* source. Configurations with events of the same type cannot have overlapping prefix or suffix configurations. | | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + + +== Operations + +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> + + +[[AbortMultipartUpload]] +=== Abort Multipart Upload +`` + +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 to completely free all storage consumed by all parts. + +To verify that all parts are removed to avoid getting charged for the part storage, call the https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html[ListParts] action and ensure that the parts list is empty. For information about permissions required to use the multipart upload, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html[Multipart Upload and Permissions]. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the multipart upload. | | x +| Object key a| String | Object key for which the multipart upload is initiated. | | x +| Upload Id a| String | Upload ID that identifies the multipart upload. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_UPLOAD +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[CompleteMultipartUpload]] +=== Complete Multipart Upload +`` + +Completes a multipart upload by assembling previously uploaded parts. + +You first initiate the multipart upload and then upload all parts using the *Upload Part* operation. After successfully uploading all relevant parts of an upload, call this operation to complete the upload. + +Upon receiving this request, Amazon S3 concatenates all the parts in ascending order by part number to create a new object. In the *Complete Multipart Upload* request, you must provide the parts list and ensure that it is complete. + +This operation concatenates the parts that you provide in the list. For each part in the list, you must provide the part number and ETag value, which is returned after that part is uploaded. + +Processing of a *Complete Multipart Upload* request could take several minutes to complete. After Amazon S3 begins processing the request, it sends an HTTP response header that specifies a `200 OK` response. While processing is in progress, Amazon S3 periodically sends white space characters to keep the connection from timing out. Because a request could fail after the initial `200 OK` response has been sent, it is important that you check the response body to determine whether the request succeeded. + +Note that if *Complete Multipart Upload* fails, applications must be prepared to retry the failed requests. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name in which the multipart upload is initiated. | | x +| Object key a| String | Object key for which the multipart upload is initiated. | | x +| Upload Id a| String | Upload ID that identifies the initiated multipart upload. | | x +| Completed Parts a| Array of <> | List of completed parts. | `#[payload]` | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_UPLOAD +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[CopyObject]] +=== Copy Object +`` + + +Creates a copy of an object that is already stored in Amazon S3. + +You can store individual objects of up to 5 TB in Amazon S3. You create a copy of your object up to 5 GB in size in a single atomic action using this API. However, to copy an object greater than 5 GB, you must use the multipart upload *Upload Part - Copy API*. For more information, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html[Copy Object Using the REST Multipart Upload API]. + +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, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html[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. A copy request might return an error when Amazon S3 receives the copy request or while Amazon S3 is copying the files. If the error occurs before the copy action starts, you receive a standard Amazon S3 error. If the error occurs during the copy operation, the error response is embedded in the `200 OK` response. This means that a `200 OK` response can indicate either success or an error. + +Design your application to parse the contents of the response and handle it appropriately. If the copy is successful, you receive a response with information about the copied object. If the request is an HTTP 1.1 request, the response is chunk encoded. Otherwise, it does not contain the Content-Length, and you must read the entire body. The copy request charge is based on the storage class and region that you specify for the destination object. For pricing information, refer to http://aws.amazon.com/s3/pricing/[Amazon S3 pricing]. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Source bucket name a| String | Name of the source bucket. | | x +| Source object key a| String | Name of the source key. | | x +| Source version ID a| String | Version ID of the source object. | | +| Destination bucket name a| String | Name of the destination bucket. | | +| Destination object key a| String | Key of the destination object. | | +| Destination ACL a| Enumeration, one of: + +** PRIVATE +** PUBLIC_READ +** PUBLIC_READ_WRITE +** AWS_EXEC_READ +** AUTHENTICATED_READ +** BUCKET_OWNER_READ +** BUCKET_OWNER_FULL_CONTROL | Access control list (ACL) settings of the copied object. The ACL is not preserved and is set to private for the user making the request. To override the default ACL setting, specify a new ACL when generating a copy request. | | +| Destination storage class a| Enumeration, one of: + +** STANDARD +** REDUCED_REDUNDANCY +** STANDARD_IA +** ONEZONE_IA +** INTELLIGENT_TIERING +** GLACIER +** DEEP_ARCHIVE +** OUTPOSTS +** GLACIER_IR | Storage class of the new object. | | +| Destination user metadata a| Object | When copying an object, you can preserve all metadata (default) or specify new metadata. | | +| Modified since a| DateTime | Copies the object only if the object is modified after the specified date. | | +| Unmodified since a| DateTime | Copies the object only if the object is not modified after the specified date. | | +| Encryption a| String | Specifies the appropriated encryption header. | | +| ContentType a| String | Standard MIME type describing the format of the object data. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:INVALID_OBJECT_STATE +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[CreateBucket]] +=== Create Bucket +`` + + +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. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket Name a| String | Name of the bucket. | | x +| Location Constraint a| String | Specifies the region in which the bucket is created. | | +| Acl a| Enumeration, one of: + +** PRIVATE +** PUBLIC_READ +** PUBLIC_READ_WRITE +** AUTHENTICATED_READ | Access control list (ACL) settings of the created bucket. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |String +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:BUCKET_ALREADY_EXISTS +* S3:BUCKET_ALREADY_OWNED_BY_YOU +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[CreateMultipartUpload]] +=== Create Multipart Upload +`` + + +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 (refer to <>). + +You also include this upload ID in the final request to either complete or abort the multipart upload request. For more information about multipart uploads, refer to https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html[Multipart Upload Overview]. + +If you configure a lifecycle rule to abort incomplete multipart uploads, the upload must complete within the number of days specified in the bucket lifecycle configuration. Otherwise, the incomplete multipart upload becomes eligible for an abort action and Amazon S3 aborts the multipart upload. For more information, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config[Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy]. + +For information about the permissions required to use the multipart upload API, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html[Uploading and Copying Objects Using Multipart Upload]. After you initiate a multipart upload and upload one or more parts, to stop being charged for storing the uploaded parts, you must either complete or abort the multipart upload. Amazon S3 frees up the space used to store the parts and stops charging you for storing them only after you either complete or abort a multipart upload. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Name of the bucket in which to initiate the upload. | | x +| Object key a| String | Object key for which the multipart upload is initiated. | | x +| Object metadata a| Object | Object metadata. | | +| Object ACL a| Enumeration, one of: + +** PRIVATE +** PUBLIC_READ +** PUBLIC_READ_WRITE +** AWS_EXEC_READ +** AUTHENTICATED_READ +** BUCKET_OWNER_READ +** BUCKET_OWNER_FULL_CONTROL | Canned ACL to apply to the object. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + +[[CreateObjectPresignedUrl]] +=== Create Object Presigned Url +`` + +Returns a presigned URL to access an Amazon S3 object. The presigned URL can be shared to other users, which enables access to the resource without providing an account's AWS security credentials. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket Name a| String | Name of the bucket in the request. | | x +| Key a| String | Key of the object in the request. | | x +| Method a| Enumeration, one of: + +** ABORT_MULTIPART_UPLOAD +** COMPLETE_MULTIPART_UPLOAD +** CREATE_MULTIPART_UPLOAD +** GET_OBJECT +** PUT_OBJECT +** UPLOAD_PART | Type of object operation to presign. | `PUT_OBJECT` | +| Duration a| Number | How long the presigned URL is valid. | `3600` | +| Duration Time Unit a| Enumeration, one of: + +** NANOSECONDS +** MICROSECONDS +** MILLISECONDS +** SECONDS +** MINUTES +** HOURS +** DAYS | Time unit of the *Duration* field. | `SECONDS` | +| Sse Customer Algorithm a| String | Server-side encryption (SSE) algorithm used for the presigned URL. This field is not allowed for the HTTP GET method. If you set a value for this field and use the HTTP GET method, you will receive an error. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type | String +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:CONNECTIVITY +* S3:RETRY_EXHAUSTED + + +[[DeleteBucket]] +=== Delete Bucket +`` + + +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. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket Name a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_BUCKET +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteBucketCors]] +=== Delete Bucket Cors +`` + + +Deletes the Cross-Origin Resource Sharing (CORS) configuration information set for the bucket. To use this operation, you must have permission to perform the s3:PutBucketCORS action. The bucket owner has this permission by default and can grant this permission to others. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteBucketLifecycleConfiguration]] +=== Delete Bucket Lifecycle Configuration +`` + + +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. + +To use this operation, you must have permission to perform the s3:PutLifecycleConfiguration action. By default, the bucket owner has this permission and the bucket owner can grant this permission to others. + +There is usually some time lag before lifecycle configuration deletion is fully propagated to all the Amazon S3 systems. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_LIFECYCLE_CONFIGURATION +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteBucketPolicy]] +=== Delete Bucket Policy +`` + + +This implementation of the DELETE action 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 must belong to the bucket owner's account to use this operation. + +If you don't have the DeleteBucketPolicy permissions, Amazon S3 returns a `403` Access Denied error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a `405 Method Not Allowed` error. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteBucketTagging]] +=== Delete Bucket Tagging +`` + + +Deletes the tags from the bucket. To use this operation, you must have permission to perform the s3:PutBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteBucketWebsite]] +=== Delete Bucket Website +`` + + +Removes the website configuration from a bucket. + +Amazon S3 returns a `200 OK` response upon successfully deleting a website configuration from the specified bucket. You receive 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. + +This DELETE action requires the S3:DeleteBucketWebsite permission. By default, only the bucket owner can delete the website configuration attached to a bucket. However, bucket owners can grant other users permission to delete the website configuration by writing a bucket policy granting them the S3:DeleteBucketWebsite permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteObject]] +=== Delete Object +`` + + +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 but still responds that the command was successful. + +To remove a specific version, you must be the bucket owner and you must use the version ID subresource. Using this subresource permanently deletes the version. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the object. | | x +| Object key a| String | Object key name to delete. | | x +| Object version Id a| String | Version ID used to reference a specific version of the object. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[DeleteObjects]] +=== Delete Objects +`` + + +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. + +The request contains a list of up to 1000 keys that you want to delete. In the XML, you provide the object key names, and optionally, version IDs if you want to delete a specific version of the object from a versioning-enabled bucket. For each key, Amazon S3 performs a delete action and returns the result of that delete, success, or failure, in the response. If the object specified in the request is not found, Amazon S3 returns the result as deleted. + +The action supports two modes for the response: verbose and quiet. By default, the action uses the verbose mode, in which the response includes the result of deletion of each key in your request. In quiet mode, the response includes only keys where the delete action encounters an error. For a successful deletion, the action does not return any information about the delete in the response body. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the objects to delete. | | x +| Object identifiers a| Array of <> | List of the object identifiers containing object keys and versions of the object to delete. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketAcl]] +=== Get Bucket Acl +`` + + +This implementation of the GET action uses the ACL subresource to return the ACL of a bucket. To use GET to return the ACL of the bucket, you must have READ_ACP access to the bucket. If the READ_ACP permission is granted to the anonymous user, you can return the ACL of the bucket without using an authorization header. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketCors]] +=== Get Bucket Cors +`` + + +Returns the CORS configuration information set for the bucket. To use this operation, you must have permission to perform the s3:GetBucketCORS action. By default, the bucket owner has this permission and can grant it to others. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketLifecycleConfiguration]] +=== Get Bucket Lifecycle Configuration +`` + + +Returns the lifecycle configuration information set on the bucket. To use this operation, you must have permission to perform the s3:GetLifecycleConfiguration action. The bucket owner has this permission, by default. The bucket owner can grant this permission to others. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_LIFECYCLE_CONFIGURATION +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketLocation]] +=== Get Bucket Location +`` + + +Returns the region the bucket resides in. You set the bucket's region using the *Location Constraint* request parameter in the *Create Bucket* operation. To use this implementation of the operation, you must be the bucket owner. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |String +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketLogging]] +=== Get Bucket Logging +`` + + +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. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketNotificationConfiguration]] +=== Get Bucket Notification Configuration +`` + + +Returns the notification configuration of a bucket. If notifications are not enabled on the bucket, the action returns an empty NotificationConfiguration element. By default, you must be the bucket owner to read the notification configuration of a bucket. However, the bucket owner can use a bucket policy to grant permission to other users to read this configuration with the s3:GetBucketNotification permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketPolicy]] +=== Get Bucket Policy +`` + + +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 to use this operation. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketTagging]] +=== Get Bucket Tagging +`` + + +Returns the tag set associated with the bucket. To use this operation, you must have permission to perform the s3:GetBucketTagging action. By default, the bucket owner has this permission and can grant this permission to others. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_TAG_SET +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketVersioning]] +=== Get Bucket Versioning +`` + + +Returns the versioning state of a bucket. To retrieve the versioning state of a bucket, you must be the bucket owner. This implementation also returns the MFA Delete status of the versioning state. If the MFA Delete status is enabled, the bucket owner must use an authentication device to change the versioning state of the bucket. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetBucketWebsite]] +=== Get Bucket Website +`` + + +Returns the website configuration for a bucket. To host a website on Amazon S3, you can configure a bucket as a website by adding a website configuration. This GET action requires the S3:GetBucketWebsite permission. By default, only the bucket owner can read the bucket website configuration. However, bucket owners can allow other users to read the website configuration by writing a bucket policy granting them the S3:GetBucketWebsite permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetObject]] +=== Get Object +`` + + +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. If the object you are retrieving is stored in the S3 Glacier or S3 Glacier Deep Archive storage class, or S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers, before you can retrieve the object you must first restore a copy using the *Restore Object* operation. Otherwise, this action returns an InvalidObjectState error. For more information about restoring archived objects, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html[Restoring Archived Objects]. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the object. | | x +| Object key a| String | Object key to get. | | x +| Part Number a| Number | Part number of the object to read. This is a positive integer between `1` and `10,000`. Specifying this number effectively performs a ranged GET request for the part specified, which is useful for downloading only a part of an object. | | +| Range a| String | Range of the bytes copied from the source object, from the first byte to the last byte. | | +| Output Mime Type a| String | MIME type of the payload that this operation outputs. | | +| Output Encoding a| String | Encoding of the payload that this operation outputs. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Streaming Strategy a| * <> +* <> +* non-repeatable-stream | Configures how Mule processes streams. Repeatable streams are the default behavior. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |Any +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:INVALID_OBJECT_STATE +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetObjectAcl]] +=== Get Object ACL +`` + + +Returns the ACL of an object. To use this operation, you must have s3:GetObjectAcl permissions or READ_ACP access to the object. This action is not supported by Amazon S3 on Outposts. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name that contains the object for which to get the ACL information. | | x +| Object key a| String | Object key for which to get the ACL information. | | x +| Object version Id a| String | Version ID used to reference a specific version of the object. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[GetObjectAttributes]] +=== Get Object Attributes +`` + + +Retrieves all the metadata from an object without returning the object itself. This operation is useful if you're interested only in an object's metadata. To use this operation, you must have READ access to the object. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the object. | | x +| Object key a| String | Object key. | | x +| Object version Id a| String | Version ID used to reference a specific version of the object. | | +| Object Attributes a| Enumeration, one of: + +** E_TAG +** CHECKSUM +** OBJECT_PARTS +** STORAGE_CLASS +** OBJECT_SIZE | Specifies the fields at the root level that you want returned to the response. Fields that you do not specify are not returned. | | x +| Max Parts a| Number | Sets the maximum number of parts to return. | | +| Part Number Marker a| Number | Specifies the part after which listing begins. Only parts with higher part numbers are listed. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[HeadObject]] +=== Head Object +`` + + +The HEAD action retrieves metadata from an object without returning the object itself. This action is useful if you are interested only in an object's metadata. To use HEAD, you must have READ access to the object. A HEAD request has the same options as a GET action on an object. The response is identical to the GET response except that there is no response body. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Name of the bucket containing the object. | | x +| Object key a| String | Object key. | | x +| Object version Id a| String | Version ID used to reference a specific version of the object. | | +| Part Number a| Number | Part number of the object that is read. This is a positive integer between `1` and `10,000`. Effectively performs a ranged HEAD request for the part specified. Useful for querying the size of the part and the number of parts in the object. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Matching ETag a| String | Matches the object if its entity tag (ETag) matches the specified tag. | | +| Not matching ETag a| String | Matches the object if its entity tag (ETag) is different from the specified tag. | | +| Modified since a| DateTime | Matches the object if it was modified since the specified time. | | +| Unmodified since a| DateTime | Matches the object if it was not modified since the specified time. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[ListBuckets]] +=== List Buckets +`` + +[IMPORTANT] +List buckets API do not work for FIPS endpoints due to an existing issue on AWS SDK. For details, refer to the following https://github.com/aws/aws-sdk/issues/521[GitHub post]. + +Returns a list of all buckets owned by the authenticated sender of the request. To use this operation, you must have the s3:ListAllMyBuckets permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_BUCKET +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[ListMultipartUploads]] +=== List Multipart Uploads +`` + + +This operation lists in-progress multipart uploads. An in-progress multipart upload is a multipart upload that is initiated using the *Initiate Multipart Upload* request, but that has not yet been completed or aborted. In the response, the uploads are sorted by key. If your application has initiated more than one multipart upload using the same object key, then uploads in the response are first sorted by key. Additionally, uploads are sorted in ascending order within each key by the upload initiation time. For information on permissions required to use the multipart upload API, refer to https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html[Multipart Upload and Permissions]. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Name of the bucket in which the multipart upload is initiated. | | x +| Prefix a| String | Limits the response to keys that begin with the specified prefix. | | +| Page size a| Number | Sets the page size of the response. | `1000` | +| Key marker a| String | Specifies the key to start with when listing parts in a bucket. | | +| Upload Id marker a| String | Specifies the upload ID to start with when listing parts in a bucket. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Streaming Strategy a| * <> +* <> +* non-repeatable-iterable | Configures how Mule processes streams. Repeatable streams are the default behavior. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |Array of <> +|=== + +==== Associated Configurations + +* <> + + + +[[ListObjectVersions]] +=== List Object Versions +`` + + +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. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name to list. | | x +| Delimiter a| String | Character you use to group keys. | | +| Key Marker a| String | Specifies the key to start with when listing objects in a bucket. | | +| Prefix a| String | Limits the response to keys that begin with the specified prefix. | | +| Page Size a| Number | Sets the page size of the response. | `1000` | +| Version Id Marker a| String | Specifies the object version you want to start listing from. | | +| Encoding Type a| Enumeration, one of: + +** URL | Encoding type used by Amazon S3 to encode object keys in the response. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Streaming Strategy a| * <> +* <> +* non-repeatable-iterable | Configures how Mule processes streams. Repeatable streams are the default behavior. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |Array of <> +|=== + +==== Associated Configurations + +* <> + + + +[[ListObjects]] +=== List Objects +`` + + +Returns all 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. Objects are returned sorted in ascending order of the respective key names in the list. To use this operation, you must have READ access to the bucket. To use this operation in an AWS Identity and Access Management (IAM) policy, you must have permissions to perform the s3:ListBucket action. The bucket owner has this permission by default and can grant this permission to others. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name to list. | | x +| Delimiter a| String | Character you use to group keys. | | +| Prefix a| String | Limits the response to keys that begin with the specified prefix. | | +| Page Size a| Number | Sets the page size of the response. | `1000` | +| Encoding Type a| Enumeration, one of: + +** URL | Encoding type used by Amazon S3 to encode object keys in the response. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Streaming Strategy a| * <> +* <> +* non-repeatable-iterable | Configures how Mule processes streams. Repeatable streams are the default behavior. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |Array of <> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:FORBIDDEN +* S3:NO_SUCH_BUCKET +* S3:REQUEST_TIMEOUT +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[ListParts]] +=== List Multipart Parts +`` + + +Lists the parts that are uploaded for a specific multipart upload. This operation must include the upload ID, which you obtain by sending the initiate multipart upload request. Refer to https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html[CreateMultipartUpload] for more information. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Name of the bucket in which the multipart upload is initiated. | | x +| Object key a| String | Object key for which the multipart upload is initiated. | | x +| Upload ID a| String | Upload ID identifying the multipart upload whose parts are listed. | | x +| Page Size a| Number | Sets the page size of the response. | `1000` | +| Part number marker a| Number | Specifies the part after which listing should begin. Only parts with higher part numbers are listed. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Streaming Strategy a| * <> +* <> +* non-repeatable-iterable | Configures how Mule processes streams. Repeatable streams are the default behavior. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |Array of <> +|=== + +==== Associated Configurations + +* <> + + + +[[PutBucketAcl]] +=== Put Bucket Acl +`` + + +Sets the permissions on an existing bucket using access control lists (ACLs). To set the ACL of a bucket, you must have the WRITE_ACP permission. You can set a bucket's permissions in one of two ways: + +* Specify the ACL in the request body. +* Specify permissions using request headers. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Grants a| Array of <> | List of grants for this bucket. | | +| Owner Id a| String | Canonical AWS ID of the owner. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketCors]] +=== Put Bucket Cors +`` + + +Sets the CORS configuration for your bucket. If the configuration exists, Amazon S3 replaces it. + +To use this operation, you need permission to perform the s3:PutBucketCORS action. By default, the bucket owner has this permission and can grant it to others. + +You set this configuration on a bucket so that the bucket can service cross-origin requests. For example, you might want to enable a request whose origin is `+http://www.example.com+` to access your Amazon S3 bucket at `+my.example.bucket.com+` by using the browser's XMLHttpRequest capability. + +To enable cross-origin resource sharing (CORS) on a bucket, you add the CORS subresource to the bucket. The CORS subresource is an XML document in which you configure rules that identify origins and the HTTP methods that can be executed on your bucket. The document is limited to 64 KB in size. When Amazon S3 receives a cross-origin request (or a pre-flight OPTIONS request) against a bucket, it evaluates the CORS configuration on the bucket and uses the first CORSRule rule that matches the incoming browser request to enable a cross-origin request. For a rule to match, the following conditions must be met: + +* The request's origin header must match the AllowedOrigin elements. +* The request method (for example, GET, PUT, HEAD, and so on) or the Access-Control-Request-Method header for a pre-flight OPTIONS request must be one of the AllowedMethod elements. Every header specified in the Access-Control-Request-Headers request header of a pre-flight request must match an AllowedHeader element. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Cors Rules a| Array of <> | List of CORS rules. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketLifecycleConfiguration]] +=== Put Bucket Lifecycle Configuration +`` + + +Creates a new lifecycle configuration for the bucket or replaces an existing lifecycle configuration. This operation overwrites an existing lifecycle configuration, so if you want to retain any configuration details, include them in the new lifecycle configuration. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Lifecycle Rules a| Array of <> | List of lifecycle rules. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_LIFECYCLE_CONFIGURATION +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketLoggingConfiguration]] +=== Put Bucket Logging +`` + + +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. The bucket owner is automatically granted FULL_CONTROL to all logs. Use the Grantee request element to grant access to other people. The Permissions request element specifies the kind of access the grantee has to the logs. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Bucket Logging Configuration a| <> | Configuration of the logging behavior. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketNotificationConfiguration]] +=== Put Bucket Notification Configuration +`` + + +Enables notifications of specified events for a bucket. Using this API, you can replace an existing notification configuration. The configuration is an XML file that defines the event types that you want Amazon S3 to publish and the destination where you want Amazon S3 to publish an event notification when it detects an event of the specified type. This operation replaces the existing notification configuration with the configuration you include in the request. You can disable notifications by defining an empty notificationConfiguration. By default, only the bucket owner can configure notifications on a bucket. However, bucket owners can use a bucket policy to grant permission to other users by setting this configuration with an s3:PutBucketNotification permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Notification Configuration a| <> | Configuration of the notifications behavior. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketPolicy]] +=== Put Bucket Policy +`` + + +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 to use this operation. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Policy a| Any | Policy configuration as a JSON. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketTagging]] +=== Put Bucket Tagging +`` + + +Sets the tags for a bucket. Use tags to organize your AWS bill to reflect your own cost structure. To do this, sign up to get your AWS account bill with tag key values included. Then, to see the cost of combined resources, organize your billing information according to resources with the same tag key values. For example, you can tag several resources with a specific application name, and then organize your billing information to see the total cost of that application across several services. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Bucket Tags a| Array of <> | Bucket tags. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:INTERNAL_ERROR +* S3:MALFORMED_XML +* S3:OPERATION_ABORTED +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketVersioning]] +=== Put Bucket Versioning +`` + + +Sets the versioning state of an existing bucket. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Versioning Status a| Enumeration, one of: + +** Enabled +** Suspended a| Status of versioning for this bucket. + +* Enabled ++ +Enables versioning for the objects in the bucket. All objects added to the bucket receive a unique version ID. + +* Suspended ++ +Disables versioning for the objects in the bucket. All objects added to the bucket receive a null version ID. If the versioning state has never been set on a bucket, it has no versioning state, so a GetBucketVersioning request does not return a versioning state value. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutBucketWebsite]] +=== Put Bucket Website +`` + + +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. + +This PUT action requires the S3:PutBucketWebsite permission. By default, only the bucket owner can configure the website attached to a bucket; however, bucket owners can allow other users to set the website configuration by writing a bucket policy that grants them the S3:PutBucketWebsite permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket a| String | Name of the bucket. | | x +| Website Config a| <> | Website serving configuration. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutObject]] +=== Put Object +`` + + +Adds an object to a bucket. You must have WRITE permissions on a bucket to add an object to it. Amazon S3 never adds partial objects; if you receive a success response, Amazon S3 adds the entire object to the bucket. + +Amazon S3 is a distributed system. If it receives multiple write requests for the same object simultaneously, it overwrites all but the last object written. Amazon S3 does not provide object locking. If you need object locking, make sure to build it into your application layer or use versioning instead. To ensure that data is not corrupted traversing the network, use the Content-MD5 parameter. When you use this parameter, Amazon S3 checks the object against the provided MD5 value and, if they do not match, returns an error. Additionally, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5 value. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name to which the PUT action was initiated | | x +| Object key a| String | Object key for which the PUT action was initiated | | x +| Content a| Any | Content of the object to upload. | `#[payload]` | +| Object ACL a| Enumeration, one of: + +** PRIVATE +** PUBLIC_READ +** PUBLIC_READ_WRITE +** AWS_EXEC_READ +** AUTHENTICATED_READ +** BUCKET_OWNER_READ +** BUCKET_OWNER_FULL_CONTROL | Canned ACL to apply to the object. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| User Metadata a| Object | Custom user metadata. | | +| Content Length a| Number | Size of the body in bytes. This field is useful when the size of the body cannot be determined automatically. | | +| Content Type a| String | Standard MIME type describing the format of the contents. | | +| Content Language a| String | Language the content is in. | | +| Content Encoding a| String | Specifies what content encodings are applied to the object and thus what decoding mechanisms to apply to obtain the media-type referenced by the *Content Type* header field. | | +| Cache Control a| String | Specifies caching behavior along the request or reply chain. | | +| Content MD5 a| String | Base64 encoded 128-bit MD5 digest of the associated object (content - not including headers) according to RFC 1864. | | +| Content Disposition a| String | Specifies presentational information for the object. | | +| Expires a| DateTime | Date and time at which the object is no longer cacheable. | | +| Storage Class a| Enumeration, one of: + +** STANDARD +** REDUCED_REDUNDANCY +** STANDARD_IA +** ONEZONE_IA +** INTELLIGENT_TIERING +** GLACIER +** DEEP_ARCHIVE +** OUTPOSTS +** GLACIER_IR | Amazon S3 Storage class in which the object is located. | | +| Request Payer a| String | Confirms that the requester knows that they are charged for the request. Bucket owners do not need to specify this field in their requests. Valid value are the requesters. | | +| Sse Customer Algorithm a| String | Specifies the algorithm to use to when encrypting the object. Valid values are AES256. | `aws:kms` | +| Sse Kms Key Id a| String | AWS Key Management System key ID used for Server Side Encryption of the Amazon S3 object. You must specify the *Server Side Encryption* field when you set the *Sse Kms Key Id* field. | | +| Sse Customer Key a| String | AWS Key Management System key ID used for Server Side Encryption of the Amazon S3 object. Use this value if aws:kms sseCustomerAlgorithm is chosen. | | +| Sse Customer Key MD5 a| String | Specifies the base64-encoded 128-bit MD5 digest of the encryption key according to RFC 1321. Amazon S3 uses this header for a message integrity check to ensure that the encryption key is transmitted without error. | | + | Server Side Encryption a| String | Server side encryption algorithm used when storing this object in Amazon S3. This field sets the HTTP x-amz-server-side-encryption. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[PutObjectAcl]] +=== Put Object ACL +`` + + +Uses the ACL subresource to set the access control list (ACL) permissions for a new or an existing object in an S3 bucket. You must have WRITE_ACP permission to set the ACL of an object. You can set access permissions using one of the following methods: + +* Specify an *Object ACL* field. Amazon S3 supports a set of predefined ACLs, known as canned ACLs. Each canned ACL has a predefined set of grantees and permissions. +* Specify a list of grants using the *Grants* field. You specify explicit access permissions and grantees (AWS accounts or Amazon S3 groups) who receive the permission. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name that contains the object to which you want to attach the ACL. | | x +| Object key a| String | Object key for which the action is initiated. | | x +| Content MD5 a| String | Base64 encoded 128-bit MD5 digest of the associated object (content - not including headers) according to RFC 1864. | | +| Version Id a| String | Version ID used to reference a specific version of the object. | | +| Object ACL a| Enumeration, one of: + +** PRIVATE +** PUBLIC_READ +** PUBLIC_READ_WRITE +** AWS_EXEC_READ +** AUTHENTICATED_READ +** BUCKET_OWNER_READ +** BUCKET_OWNER_FULL_CONTROL | Canned ACL to apply to the object. | | +| Owner a| <> | Account ID of the expected bucket owner. | | +| Grants a| Array of <> | List of grants. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |String +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[RestoreObject]] +=== Restore Object +`` + + +Restores an archived copy of an object back into Amazon S3. Objects that you archive to the S3 Glacier or S3 Glacier Deep Archive storage class, and S3 Intelligent-Tiering Archive or S3 Intelligent-Tiering Deep Archive tiers are not accessible in real time. + +For objects in Archive Access or Deep Archive Access tiers, you must first initiate a restore request, and then wait until the object is moved into the Frequent Access tier. + +For objects in S3 Glacier or S3 Glacier Deep Archive storage classes, you must first initiate a restore request, and then wait until a temporary copy of the object is available. + +To access an archived object, you must restore the object for the duration (number of days) that you specify. + +To restore a specific object version, you can provide a version ID. If you don't provide a version ID, Amazon S3 restores the current version. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the object to restore. | | x +| Object key a| String | Object key for which the action is initiated. | | x +| Version Id a| String | Version ID used to reference a specific version of the object. | | +| Days a| Number | Lifetime of the active copy in days. Do not use with restores that specify OutputLocation. | | x +| Glacier Job Tier a| Enumeration, one of: + +** Standard +** Bulk +** Expedited | Retrieval tier at which the restore is processed. | | x +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:GLACIER_EXPEDITED_RETRIEVAL_NOT_AVAILABLE +* S3:INVALID_OBJECT_STATE +* S3:NO_SUCH_KEY +* S3:OBJECT_ALREADY_IN_ACTIVE_TIER +* S3:REQUEST_TIMEOUT +* S3:RESTORE_ALREADY_IN_PROGRESS +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[SelectObjectContent]] +=== Select Object Content +`` + + +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. You can use the Amazon S3 Select Object operation to query objects formatted as CSV, JSON, or Parquet files. + +This operation supports the following compression types: + +* GZIP and BZIP2 for CSV and JSON files + +* Columnar compression for Parquet files using GZIP or Snappy + +The Amazon S3 *Select Object* operation does not support whole-object compression for Parquet files. + + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Bucket name containing the object content to select. | | x +| Object key a| String | Object key containing the content to select. | | x +| Expression a| String | Expression that is used to query the object. | | x +| Expression Type a| String | Type of the provided expression. | | x +| Input Serialization a| <> | Describes the format of the data in the object that is being queried. | | x +| Output Serialization a| <> | Describes the format of the data that you want Amazon S3 to return in response. | | x +| Scan Range a| <> | Specifies the byte range of the object to get the records from. A record is processed when its first byte is contained by the range. | | +| Request Progress Enabled a| Boolean | Specifies if periodic request progress information must be enabled. | `false` | +| Sse Customer Algorithm a| String | Server-side encryption (SSE) algorithm used to encrypt the object. This field is required only when the object is created using a checksum algorithm. | | +| Sse Customer Key a| String | Server-side encryption (SSE) customer managed key. This field is required only when the object is created using a checksum algorithm. | | +| Sse Customer Key MD5 a| String | MD5 server-side encryption (SSE) customer managed key. | | +| Output Mime Type a| String | MIME type of the payload that this operation outputs. | | +| Output Encoding a| String | Encoding of the payload that this operation outputs. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Streaming Strategy a| * <> +* <> +* non-repeatable-stream | Configures how Mule processes streams. Repeatable streams are the default behavior. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |Any +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:NO_SUCH_BUCKET +* S3:NO_SUCH_KEY +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[UploadPart]] +=== Upload Part +`` + + +Uploads a part in a multipart upload. + +In this operation, you provide part data in your request. However, you have an option to specify your existing Amazon S3 object as a data source for the part you are uploading. + +To upload a part from an existing object, use the <> operation. You must initiate a multipart upload (refer to <>) before you can upload any part. + +In response to your initiate request, Amazon S3 returns an upload ID and an unique identifier that you must include in your upload part request. Part numbers can be any number from 1 to 10,000, inclusive. A part number uniquely identifies a part and also defines its position within the object created. If you upload a new part using the same part number that is used with a previous part, the previously uploaded part is overwritten. Each part must be at least 5 MB in size, except the last part. There is no size limit on the last part of your multipart upload. + +To ensure that data is not corrupted when traversing the network, specify the Content-MD5 header in the upload part request. Amazon S3 checks the part data against the provided MD5 value. If they do not match, Amazon S3 returns an error. + +[NOTE] +After you initiate a multipart upload and upload one or more parts, you must either complete or abort the multipart upload to stop getting charged for storing the uploaded parts. After you complete or abort the multipart upload, Amazon S3 frees up the parts storage and stops charging you for it. + +==== Common Cases for the Operation + +* When you upload content of a large file in parts (for example, an FTP Connector *Read* operation or SFTP Connector *On New or Updated File* source of a Mule app), you must configure the *non repeatable stream* strategy in these operations. You must also specify the number of bytes to consume from the content in the *Upload part > Content length* field. +* When you upload the content of many small files, you can configure either the *repeatable stream* or *non repeatable stream* strategy in the FTP or SFTP Connector operations. In the *Upload part* operation, you can optionally specify the entire file size in the *Content length* field. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Bucket name a| String | Name of the bucket in which the multipart upload is initiated. | | x +| Object key a| String | Object key for which the multipart upload is initiated. | | x +| Upload Id a| String | Upload ID identifying the multipart upload whose part is uploaded. | | x +| Part Number a| Number | Part number of part uploaded. This is a positive integer between 1 and 10,000. | | x +| Content a| Any | Object data. | | x +| Content MD5 a| String | Base64 encoded 128-bit MD5 digest of the associated object (content - not including headers) according to RFC 1864. | | +| Content Length a| Number | Size of the body in bytes. This field is useful when the size of the body cannot be determined automatically. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + + + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + + +[[UploadPartCopy]] +=== Upload Part Copy +`` + + +Uploads a part by copying data from an existing object as data source. The minimum allowable part size for a multipart upload is 5 MB. Instead of using an existing object as part data, you can use the <> operation and provide data in your request. You must initiate a multipart upload before you can upload a part. Amazon S3 returns a unique identifier, the upload ID, that you must include in your upload part request. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Name | Type | Description | Default Value | Required +| Configuration | String | Name of the configuration to use. | | x +| Source bucket name a| String | Name of the source bucket. | | x +| Source object key a| String | Name of the source key. | | x +| Destination bucket name a| String | Bucket name. | | x +| Destination object key a| String | Object key for which the multipart upload is initiated. | | x +| Upload Id a| String | Upload ID identifying the multipart upload whose part is copied. | | x +| Part number a| Number | Part number of part copied. This is a positive integer between 1 and 10,000. | | x +| Bytes range a| String | Range of the bytes that are copied from the source object from the first byte to the last byte. | | +| Config Ref a| ConfigurationProvider | Name of the configuration to use to execute this component. | | x +| Matching ETag a| String | Matches the object if its entity tag (ETag) matches the specified tag. | | +| Not matching ETag a| String | Matches the object if its entity tag (ETag) is different from the specified tag. | | +| Modified since a| DateTime | Matches the object if it was modified since the specified time. | | +| Unmodified since a| DateTime | Matches the object if it was not modified since the specified time. | | +| Target Variable a| String | Name of the variable that stores the operation's output. | | +| Target Value a| String | Expression that evaluates the operation’s output. The outcome of the expression is stored in the *Target Variable* field. | `#[payload]` | +| Reconnection Strategy a| * <> +* <> | Retry strategy in case of connectivity errors. | | +|=== + +==== Output + +[%autowidth.spread] +|=== +|Type |<> +|=== + +==== Associated Configurations + +* <> + +==== Throws + +* S3:BAD_REQUEST +* S3:CONNECTIVITY +* S3:FORBIDDEN +* S3:REQUEST_TIMEOUT +* S3:RETRY_EXHAUSTED +* S3:S3_ERROR +* S3:SERVER_BUSY +* S3:SERVICE_ERROR + +== Object Types + +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> +* <> + +[[ApiChecksum]] +=== Api Checksum + +Configures the API checksum type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Checksum CRC32 a| String | Checksum CRC32. | | +| Checksum CRC32 C a| String | Checksum CRC32 C. | | +| Checksum SHA1 a| String | Checksum SHA1. | | +| Checksum SHA256 a| String | Checksum SHA256. | | +|=== + +[[ApiCopyObjectResult]] +=== Api Copy Object Result + +Configures the API copy object result type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Checksum CRC32 a| String | Checksum CRC32. | | +| Checksum CRC32 C a| String | Checksum CRC32 C. | | +| Checksum SHA1 a| String | Checksum SHA1. | | +| Checksum SHA256 a| String | Checksum SHA256. | | +| Last Modified a| DateTime | Last modified. | | +|=== + +[[ApiCopyPartResult]] +=== Api Copy Part Result + +Configures the API copy part result type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Checksum CRC32 a| String | Checksum CRC32. | | +| Checksum CRC32 C a| String | Checksum CRC32 C. | | +| Checksum SHA1 a| String | Checksum SHA1. | | +| Checksum SHA256 a| String | Checksum SHA256. | | +| Last Modified a| DateTime | Last modified. | | +|=== + +[[ApiCsvInput]] +=== Api CSV Input + +Configures the API CSV input type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| File Header Info a| Enumeration, one of: + +** USE +** IGNORE +** NONE | File header information. | | +| Comments a| String | Comments. | | +| Quote Escape Character a| String | Quote escape character. | | +| Record Delimiter a| String | Record delimiter. | | +| Field Delimiter a| String | Field delimiter. | | +| Quote Character a| String | Quote character. | | +| Allow Quoted Record Delimiter a| Boolean | Allow quoted record delimiter. | `false` | +|=== + +[[ApiCsvOutput]] +=== Api CSV Output + +Configures the API CSV output type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Quote Fields a| Enumeration, one of: + +** ALWAYS +** ASNEEDED | Quote fields. | | +| Quote Escape Character a| String | Quote escape character. | | +| Record Delimiter a| String | Record delimiter. | | +| Field Delimiter a| String | Field delimiter. | | +| Quote Character a| String | Quote character. | | +|=== + +[[ApiGetObjectAttributesParts]] +=== Api Get Object Attributes Parts + +Configures the API get object attributes parts type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Max Parts a| Number | Maximum parts. | | +| Next Part Number Marker a| Number | Next part number marker. | | +| Part Number Marker a| Number | Part number marker. | | +| Parts a| Array of <> | Parts. | | +| Total Parts Count a| Number | Total parts count. | | +| Truncated a| Boolean | Truncated. | | +|=== + +[[ApiInitiator]] +=== Api Initiator + +Configures the API initiator type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Id a| String | ID. | | +| Display Name a| String | Display name. | | +|=== + +[[ApiInputSerialization]] +=== Api Input Serialization + +Configures the API input serialization type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Csv Input a| <> | CSV input. | | +| Compression Type a| Enumeration, one of: + +** NONE +** GZIP +** BZIP2 | Compression type. | `NONE` | +| Json a| Enumeration, one of: + +** DOCUMENT +** LINES | JSON. | | +| Parquet a| Boolean | Parquet. | `false` | +|=== + +[[ApiObjectPart]] +=== Api Object Part + +Configures the API object part type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Checksum CRC32 a| String | Checksum CRC32. | | +| Checksum CRC32 C a| String | Checksum CRC32 C. | | +| Checksum SHA1 a| String | Checksum SHA1. | | +| Checksum SHA256 a| String | Checksum SHA256. | | +| Part Number a| Number | Part number. | | +| Size a| Number | Size. | | +|=== + +[[ApiObjectVersion]] +=== Api Object Version + +Configures the API object version type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Checksum Algorithm a| Array of String | Checksum algorithm. | | +| Key a| String | Key. | | +| Last Modified a| DateTime | Last modified. | | +| Latest a| Boolean | Latest. | | +| Owner a| <> | Owner. | | +| Size a| Number | Size. | | +| Storage Class a| String | Storage class. | | +| Version Id a| String | Version ID. | | +|=== + +[[ApiOutputSerialization]] +=== Api Output Serialization + +Configures the API output serialization type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Csv Output a| <> | CSV output. | | +| JSON Output Record Delimiter a| String | JSON output record delimiter. | | +|=== + +[[ApiS3Object]] +=== Api S3 Object + +Configures the API S3 object type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Checksum Algorithm a| Array of String | Checksum algorithm. | | +| Key a| String | Key. | | +| Last Modified a| DateTime | Last modified. | | +| Owner a| <> | Owner. | | +| Size a| Number | Size. | | +| Storage Class a| String | Storage class. | | +|=== + +[[ApiScanRange]] +=== Api Scan Range + +Configures the API scan range type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Start a| Number | Start. | | +| End a| Number | End. | | +|=== + +[[BucketAclResponse]] +=== Bucket Acl Response + +Configures the bucket ACL response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Owner a| <> | Owner. | | x +| Grants a| Array of <> | Grants. | | x +|=== + +[[BucketCorsResponse]] +=== Bucket Cors Response + +Configures the bucket CORS reponse. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Cors Rules a| Array of <> | CORS rules. | | +|=== + +[[BucketNotificationResponse]] +=== Bucket Notification Response + +Configures the bucket notification response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Event Bridge a| Boolean | Event bridge. | | +| Lambda Function Configurations a| Array of <> | Lambda function configurations. | | +| Queue Configurations a| Array of <> | Queue configurations. | | +| Topic Configurations a| Array of <> | Topic configurations. | | +|=== + +[[BucketPolicyResponse]] +=== Bucket Policy Response + +Configures the bucket policy response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Policy a| String | Policy. | | +|=== + +[[BucketResponse]] +=== Bucket Response + +Configures the bucket response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Name a| String | Name. | | x +| Creation Date a| DateTime | Creation date. | | x +|=== + +[[BucketTaggingResponse]] +=== Bucket Tagging Response + +Configures the bucket tagging response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Tags a| Array of <> | Tags. | | +|=== + +[[BucketVersioningResponse]] +=== Bucket Versioning Response + +Configures the bucket versioning response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Mfa Delete a| String | MFA delete. | | +| Status a| Enumeration, one of: + +** Enabled +** Suspended | Status. | | +|=== + +[[BucketWebsiteResponse]] +=== Bucket Website Response + +Configures the bucket website response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Error Document Key a| String | Error document key. | | +| Index Document Suffix a| String | Index document suffix. | | +| Redirect All Requests To a| <> | Redirect all requests to. | | +| Routing Rules a| Array of <> | Routing rules. | | +|=== + +[[CompleteMultipartUploadResponse]] +=== Complete Multipart Upload Response + +Configures the complete multipart upload response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Bucket a| String | Bucket name. | | +| Bucket Key Enabled a| Boolean | Enables the bucket key. | | +| Expiration a| String | Expiration. | | +| Key a| String | Key name. | | +| Location a| String | Location. | | +| Request Charged a| String | Request charged. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Ssekms Key Id a| String | AWS SSEKMS Key ID. | | +| Version Id a| String | Version ID. | | +|=== + +[[Condition]] +=== Condition + +Configures the condition type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Http Error Code Returned Equals a| String | HTTP error code returned equals. | | +| Key Prefix Equals a| String | Key prefix equals. | | +|=== + +[[CopyObjectResponse]] +=== Copy Object Response + +Configures the copy object response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Bucket Key Enabled a| Boolean | Enables the bucket key. | | +| Copy Object Result a| <> | Copy the object result. | | +| Copy Source Version Id a| String | Copy the source version ID. | | +| Expiration a| String | Expiration. | | +| Request Charged a| String | Request charged. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Sse Customer Algorithm a| String | SSE customer algorithm. | | +| Sse Customer Key MD5 a| String | SSE customer key MD5. | | +| Ssekms Encryption Context a| String | SSEKMS encryption context. | | +| Ssekms Key Id a| String | SSEKMS key ID. | | +| Version Id a| String | Version ID. | | +|=== + +[[CorsRule]] +=== Cors Rule + +Configures the CORS rule type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Id a| String | ID. | | +| Allowed Headers a| Array of String | Allowed headers. | | +| Allowed Methods a| Array of String | Allowed methods. | | x +| Allowed Origins a| Array of String | Allowed origins. | | x +| Expose Headers a| Array of String | Expose headers. | | +| Max Age Seconds a| Number | Maximum age of seconds. | | +|=== + +[[CreateMultipartUploadResponse]] +=== Create Multipart Upload Response + +Configures the create multipart upload response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Abort Date a| DateTime | Abort date. | | +| Abort Rule Id a| String | Abort rule ID. | | +| Bucket a| String | Bucket. | | +| Bucket Key Enabled a| Boolean | Enables bucket key. | | +| Key a| String | Key. | | +| Request Charged a| String | Request charged. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Sse Customer Algorithm a| String | SSE customer algorithm. | | +| Sse Customer Key MD5 a| String | SSE customer key MD5. | | +| Ssekms Encryption Context a| String | SSEKMS encryption context. | | +| Ssekms Key Id a| String | SSEKMS key ID. | | +| Upload Id a| String | Upload ID. | | +|=== + +[[CrlFile]] +=== CRL File + +Specifies the location of the certification revocation list (CRL) file. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Path a| String | Path to the CRL file. | | +|=== + +[[CustomOcspResponder]] +=== Custom OCSP Responder + +Configures a custom OCSP responder for certification revocation checks. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Url a| String | URL of the OCSP responder. | | +| Cert Alias a| String | Alias of the signing certificate for the OCSP response. If specified, the alias must be in the truststore. | | +|=== + +[[ExpirationPolicy]] +=== Expiration Policy + +Configures an expiration policy strategy. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Max Idle Time a| Number | Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. | | +| Time Unit a| Enumeration, one of: + +** NANOSECONDS +** MICROSECONDS +** MILLISECONDS +** SECONDS +** MINUTES +** HOURS +** DAYS | Time unit for the *Max Idle Time* field. | | +|=== + +[[FilterRule]] +=== Filter Rule + +Configures the filter rule type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Key Name a| String | Key name. | | x +| Value a| String | Value for this type. | | x +|=== + +[[GetObjectAclResponse]] +=== Get Object Acl Response + +Configures the get object ACL response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Grants a| Array of <> | Grants. | | +| Owner a| <> | Owner. | | +| Request Charged a| String | Request charged. | | +|=== + +[[GetObjectAttributesResponse]] +=== Get Object Attributes Response + +Configures the get object attributes response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Checksum a| <> | Checksum. | | +| Delete Marker a| Boolean | Delete marker. | | +| Last Modified a| DateTime | Last modified. | | +| Object Parts a| <> | Object parts. | | +| Object Size a| Number | Object size. | | +| Request Charged a| String | Request charged. | | +| Storage Class a| String | Storage class. | | +| Version Id a| String | Version ID. | | +|=== + +[[Grant]] +=== Grant + +Configures the grant type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Grantee a| <> | Grantee. | | +| Permission a| String | Permission. | | +|=== + +[[Grantee]] +=== Grantee + +Configures the grantee type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Display Name a| String | Display name. | | +| Type a| Enumeration, one of: + +** CANONICAL_USER +** AMAZON_CUSTOMER_BY_EMAIL +** GROUP | Type. | | x +| Id a| String | ID. | | +| Email Address a| String | Email address. | | +| Uri a| String | URI. | | +|=== + +[[HeadObjectResponse]] +=== Head Object Response + +Configures the head object response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Accept Ranges a| String | Accept ranges. | | +| Archive Status a| String | Archive status. | | +| Bucket Key Enabled a| Boolean | Enable bucket key. | | +| Cache Control a| String | Cache control. | | +| Checksum CRC32 a| String | Checksum CRC32. | | +| Checksum CRC32 C a| String | Checksum CRC32 C. | | +| Checksum SHA1 a| String | Checksum SHA1. | | +| Checksum SHA256 a| String | Checksum SHA256. | | +| Content Disposition a| String | Content disposition. | | +| Content Encoding a| String | Content encoding. | | +| Content Language a| String | Content language. | | +| Content Length a| Number | Content length. | | +| Content Type a| String | Content type. | | +| Delete Marker a| Boolean | Delete marker. | | +| Expiration a| String | Expiration. | | +| Expires a| DateTime | Expires. | | +| Last Modified a| DateTime | Last modified. | | +| Metadata a| Object | Metadata. | | +| Missing Meta a| Number | Missing meta. | | +| Object Lock Legal Hold Status a| String | Object lock legal hold status. | | +| Object Lock Mode a| String | Object lock mode. | | +| Object Lock Retain Until Date a| DateTime | Object lock retain until date. | | +| Parts Count a| Number | Parts count. | | +| Replication Status a| String | Replication status. | | +| Request Charged a| String | Request charged. | | +| Restore a| String | Restore. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Sse Customer Algorithm a| String | SSE customer algorithm. | | +| Sse Customer Key MD5 a| String | SSE customer key MD5. | | +| Ssekms Key Id a| String | SSEKMS key ID. | | +| Storage Class a| String | Storage class. | | +| Version Id a| String | Version ID. | | +| Website Redirect Location a| String | Website redirect location. | | +|=== + +[[KeyStore]] +=== Keystore + +Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Path a| String | Path to the keystore. Mule resolves the path relative to the current classpath and file system. | | +| Type a| String | Type of store. | | +| Alias a| String | Alias of the key to use when the keystore contains multiple private keys. By default, Mule uses the first key in the file. | | +| Key Password a| String | Password used to protect the private key. | | +| Password a| String | Password used to protect the keystore. | | +| Algorithm a| String | Encryption algorithm that the keystore uses. | | +|=== + +[[LambdaFunctionConfiguration]] +=== Lambda Function Configuration + +Configures the lambda function configuration type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Cloud Function a| String | Cloud function. | | x +| Events a| String | Events. | | x +| Notification Filter a| <> | Notification filter. | | x +| Id a| String | ID. | | x +|=== + +[[LifecycleConfiguration]] +=== Lifecycle Configuration + +Configures the lifecycle configuration type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Rules a| Array of <> | Rules. | | +|=== + +[[LifecycleRule]] +=== Lifecycle Rule + +Configures the lifecycle rule type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Id a| String | ID. | | +| Lifecycle Filter a| <> | Lifecycle filter. | | +| Status a| String | Status. | | x +| Expiration Days a| Number | Expiration days. | | +| Expiration Date a| DateTime | Expiration date. | | +| Transitions a| Array of <> | Transitions. | | +| Noncurrent Version Transitions a| Array of <> | Noncurrent version transitions. | | +| Days To Abort Incomplete Multipart Upload a| Number | Days to abort incomplete multipart upload. | | +| Noncurrent Version Expiration In Days a| Number | Noncurrent version expiration in days. | | +|=== + +[[LifecycleRuleFilter]] +=== Lifecycle Rule Filter + +Configures the lifecycle rule filter type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Prefix a| String | Prefix. | | +|=== + +[[ListBucketsResponse]] +=== List Buckets Response + +Configures the list buckets response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Buckets a| Array of <> | Buckets. | | +| Owner a| <> | Owner. | | +|=== + +[[LoggingStatus]] +=== Logging Status + +Configures the logging status type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Logging Enabled a| ApiLoggingEnabled | Logging enabled. | | +|=== + +[[MultipartPart]] +=== Multipart Part + +Configures the multipart part type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | x +| Part Number a| Number | | | x +|=== + +[[MultipartUpload]] +=== Multipart Upload + +Configures the multipart upload type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Upload Id a| String | Upload ID. | | +| Key a| String | Key. | | +| Initiated a| DateTime | Initiated. | | +| Storage Class a| Enumeration, one of: + +** STANDARD +** REDUCED_REDUNDANCY +** STANDARD_IA +** ONEZONE_IA +** INTELLIGENT_TIERING +** GLACIER +** DEEP_ARCHIVE +** OUTPOSTS +** GLACIER_IR | Storage class. | | +| Owner a| <> | Owner. | | +| Initiator a| <> | Initiator. | | +|=== + +[[NoncurrentVersionTransition]] +=== Noncurrent Version Transition + +Configures the noncurrent version transition type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Noncurrent Days a| Number | Noncurrent days. | | +| Storage Class a| Enumeration, one of: + +** STANDARD +** REDUCED_REDUNDANCY +** STANDARD_IA +** ONEZONE_IA +** INTELLIGENT_TIERING +** GLACIER +** DEEP_ARCHIVE +** OUTPOSTS +** GLACIER_IR | Storage class. | | +| Newer Noncurrent Versions a| Number | Newer noncurrent versions. | | +|=== + +[[NotificationConfiguration]] +=== Notification Configuration + +Configures the notification configuration type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Topic Configurations a| Array of <> | Topic configurations. | | +| Lambda Function Configurations a| Array of <> | Lambda function configurations. | | +| Queue Configurations a| Array of <> | Queue configurations. | | +| Event Bridge a| Boolean | Event bridge. | `false` | +|=== + +[[NotificationConfigurationFilter]] +=== Notification Configuration Filter + +Configures the notification configuration filter type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Key a| <> | Key. | | x +|=== + +[[ObjectIdentifier]] +=== Object Identifier + +Configures the object identifier type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Key a| String | Key for this type. | | x +| Version Id a| String | Version ID. | | +|=== + +[[Owner]] +=== Owner + +Configures the owner of an Amazon S3 bucket. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Id a| String | ID of the owner. | | +| Display Name a| String | Display name of the owner. | | +|=== + +[[ProxyConfiguration]] +=== Proxy + +Configures a proxy for outbound connections. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Host a| String | Hostname or IP address of the proxy server. | | x +| Port a| Number | Port of the proxy server. | | x +| Username a| String | Username to authenticate against the proxy server. | | +| Password a| String | Password to authenticate against the proxy server. | | +| Non Proxy Hosts a| Array of String | Non-proxy hosts. | | +| Ntlm Domain a| String | NTLM domain. | | +|=== + +[[PutObjectResponse]] +=== Put Object Response + +Configures the put object response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Bucket Key Enabled a| Boolean | Bucket key enabled. | | +| Checksum CRC32 a| String | Checksum CRC32. | | +| Checksum CRC32 C a| String | Checksum CRC32 C. | | +| Checksum SHA1 a| String | Checksum SHA1. | | +| Checksum SHA256 a| String | Checksum SHA256. | | +| Expiration a| String | Expiration. | | +| Request Charged a| String | Request charged. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Sse Customer Algorithm a| String | SSE customer algorithm. | | +| Sse Customer Key MD5 a| String | SSE customer key MD5. | | +| Ssekms Encryption Context a| String | SSEKMS encryption context. | | +| Ssekms Key Id a| String | SSEKMS key ID. | | +| Version Id a| String | Version ID. | | +|=== + +[[QueueConfiguration]] +=== Queue Configuration + +Configures the queue configuration type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Queue Arn a| String | Queue ARN. | | x +| Events a| String | Events. | | x +| Notification Filter a| <> | Notification filter. | | x +| Id a| String | ID. | | x +|=== + +[[Reconnect]] +=== Reconnect + +Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Frequency a| Number | How often to attempt to reconnect, in milliseconds. | | +| Blocking a| Boolean | If `false`, the reconnection strategy runs in a separate, non-blocking thread. | | +| Count a| Number | How many reconnection attempts the Mule app can make. | | +|=== + +[[ReconnectForever]] +=== Reconnect Forever + +Configures a forever reconnection strategy by which the connector source or operation attempts to reconnect at a specified frequency for as long as the Mule app runs. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Frequency a| Number | How often to attempt to reconnect, in milliseconds. | | +| Blocking a| Boolean | If `false`, the reconnection strategy runs in a separate, non-blocking thread. | | +|=== + +[[Reconnection]] +=== Reconnection + +Configures a reconnection strategy for an operation. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Fails Deployment a| Boolean | When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn't pass after exhausting the associated reconnection strategy. | | +| Reconnection Strategy a| * <> +* <> | Reconnection strategy to use. | | +|=== + +[[RedeliveryPolicy]] +=== Redelivery Policy + +Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Max Redelivery Count a| Number | Maximum number of times that a redelivered request can be processed unsuccessfully before returning a REDELIVERY_EXHAUSTED error. | | +| Message Digest Algorithm a| String | Secure hashing algorithm to use if the *Use Secure Hash* field is `true`. If the payload of the message is a Java object, Mule ignores this value and returns the value that the payload's `hashCode()` returned. | | +| Message Identifier a| <> | One or more expressions that determine if a message was redelivered. This property can be set only if the *Use Secure Hash* field is `false`. | | +| Object Store a| ObjectStore | Configures the object store that stores the redelivery counter for each message. | | +|=== + +[[RedeliveryPolicyMessageIdentifier]] +=== Redelivery Policy Message Identifier + +Configures how to identify a redelivered message and how to find out when the message was redelivered. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Use Secure Hash a| Boolean | If `true`, Mule uses a secure hash algorithm to identify a redelivered message. | | +| Id Expression a| String | One or more expressions that determine when a message was redelivered. You can set this property only if the *Use Secure Hash* field is `false`. | | +|=== + +[[Redirect]] +=== Redirect + +Configures the redirect type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Host Name a| String | Host name. | | +| Http Redirect Code a| String | HTTP redirect code. | | +| Protocol a| Enumeration, one of: + +** HTTP +** HTTPS | Protocol. | | +| Replace Key Prefix With a| String | Replace key prefix. | | +| Replace Key With a| String | Replace key. | | +|=== + +[[RedirectRule]] +=== Redirect Rule + +Configures the redirect rule type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Hostname a| String | Hostname. | | x +| Protocol a| Enumeration, one of: + +** HTTP +** HTTPS | Protocol. | | +|=== + +[[RepeatableFileStoreIterable]] +=== Repeatable File Store Iterable + +Configures the repeatable file store iterable type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| In Memory Objects a| Number | Maximum amount of instances to keep in memory. If more than that is required, content on the disk is buffered. | | +| Buffer Unit a| Enumeration, one of: + +** BYTE +** KB +** MB +** GB | Unit for the *In Memory Objects* field. | | +|=== + +[[RepeatableFileStoreStream]] +=== Repeatable File Store Stream + +Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream content in memory. If the stream content is larger than the configured buffer size, Mule backs up the buffer's content to disk and then clears the memory. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| In Memory Size a| Number a| Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance: + +* Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory. + +* Configure a smaller buffer size to decrease memory load at the expense of response time. | | +| Buffer Unit a| Enumeration, one of: + +** BYTE +** KB +** MB +** GB | Unit for the *In Memory Size* field. | | +|=== + +[[RepeatableInMemoryIterable]] +=== Repeatable In Memory Iterable + +Configures the repeatable in memory iterable type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Initial Buffer Size a| Number | Amount of instances that is initially allowed to keep in memory to consume the stream and provide random access to it. If the stream contains more data than can fit into this buffer, then the buffer expands according to the *Buffer Size Increment* attribute, with an upper limit of *Max In Memory Size*. | `100` | +| Buffer Size Increment a| Number | This is by how much the buffer size expands if it exceeds its initial size. Setting a value of `0` or lower means that the buffer should not expand, meaning that a `STREAM_MAXIMUM_SIZE_EXCEEDED` error is raised when the buffer gets full. | `100` | +| Max Buffer Size a| Number | Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a `STREAM_MAXIMUM_SIZE_EXCEEDED` error. A value of less than or equal to `0` means no limit. | | +|=== + +[[RepeatableInMemoryStream]] +=== Repeatable In Memory Stream + +Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX buffer size. Always run performance tests to find the optimal buffer size for your specific use case. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Initial Buffer Size a| Number | Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by *Buffer Size Increment*, with an upper limit of *Max In Memory Size value*. | | +| Buffer Size Increment a| Number | This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full. | | +| Max Buffer Size a| Number | Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a `STREAM_MAXIMUM_SIZE_EXCEEDED` error. A value of less than or equal to `0` means no limit. | | +| Buffer Unit a| Enumeration, one of: + +** BYTE +** KB +** MB +** GB | Unit for the *Initial Buffer Size*, *Buffer Size Increment*, *Max Buffer Size*, and *Buffer Unit* fields. | | +|=== + +[[RestoreObjectResponse]] +=== Restore Object Response + +Configures the restore object response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Request Charged a| String | Request charged. | | +| Restore Output Path a| String | Restore output path. | | +|=== + +[[Role]] +=== Role + +Configures the Role type. + +NOTE: The Role type is supported only for standalone or Runtime Fabric deployments. The Role type is not supported for CloudHub 1.0 deployments. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Arn a| String | ARN. | | x +| External Id a| String | External ID. | | +| Duration a| Number | Duration. | `3600` | +| Duration Time Unit a| Enumeration, one of: + +** NANOSECONDS +** MICROSECONDS +** MILLISECONDS +** SECONDS +** MINUTES +** HOURS +** DAYS | Time unit for the *Duration* field. | `SECONDS` | +| Referred Policy Arns a| Array of String | Referred policy ARNs. | | +| Tags a| Object | Tags. | | +| Custom Sts Endpoint a| String | Custom STS endpoint. | | +|=== + +[[RoutingRule]] +=== Routing Rule + +Configures the routing rule type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Condition a| <> | Condition. | | +| Redirect a| <> | Redirect. | | x +|=== + +[[S3KeyFilter]] +=== S3 Key Filter + +Configures the S3 key filter type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Filter Rules a| Array of <> | Filter rules. | | x +|=== + +[[S3ObjectTriggerResponse]] +=== S3 Object Trigger Response + +Configures the S3 object trigger response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Bucket Name a| String | Bucket name. | | +| Key a| String | Key. | | +| Owner a| <> | Owner. | | +| Sequencer a| String | Sequencer. | | +| Size a| String | Size. | | +| Version Id a| String | Version ID. | | +|=== + +[[StandardRevocationCheck]] +=== Standard Revocation Check + +Configures standard revocation checks for TLS certificates. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Only End Entities a| Boolean a| Which elements to verify in the certificate chain: + +* `true` ++ +Verify only the last element in the certificate chain. + +* `false` ++ +Verify all elements in the certificate chain. | | +| Prefer Crls a| Boolean a| How to check certificate validity: + +* `true` ++ +Check the Certification Revocation List (CRL) for certificate validity. + +* `false` ++ +Use the Online Certificate Status Protocol (OCSP) to check certificate validity. | | +| No Fallback a| Boolean a| Whether to use the secondary method to check certificate validity: + +* `true` ++ +Use the method that wasn't specified in the *Prefer Crls* field (the secondary method) to check certificate validity. + +* `false` ++ +Do not use the secondary method to check certificate validity. | | +| Soft Fail a| Boolean a| What to do if the revocation server can't be reached or is busy: + +* `true` ++ +Avoid verification failure. + +* `false` ++ +Allow the verification to fail. | | +|=== + +[[Tag]] +=== Tag + +Configures the tag type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Key a| String | Key for this type. | | x +| Value a| String | Value for this type. | | x +|=== + +[[Tls]] +=== TLS + +Configures TLS to provide secure communications for the Mule app. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Enabled Protocols a| String | Comma-separated list of protocols enabled for this context. | | +| Enabled Cipher Suites a| String | Comma-separated list of cipher suites enabled for this context. | | +| Trust Store a| <> | Configures the TLS truststore. | | +| Key Store a| <> | Configures the TLS keystore. | | +| Revocation Check a| * <> +* <> +* <> | Configures a revocation checking mechanism. | | +|=== + +[[TopicConfiguration]] +=== Topic Configuration + +Configures the topic configuration type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Topic Arn a| String | Topic ARN. | | x +| Events a| String | Events. | | x +| Notification Filter a| <> | Notification filter. | | x +| Id a| String | ID. | | x +|=== + +[[Transition]] +=== Transition + +Configures the transition type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Date a| DateTime | Date. | | +| Days a| Number | Days. | | +| Storage Class a| Enumeration, one of: + +** STANDARD +** REDUCED_REDUNDANCY +** STANDARD_IA +** ONEZONE_IA +** INTELLIGENT_TIERING +** GLACIER +** DEEP_ARCHIVE +** OUTPOSTS +** GLACIER_IR | Storage class. | | +|=== + +[[TrustStore]] +=== Truststore + +Configures the truststore for TLS. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Path a| String | Path to the truststore. Mule resolves the path relative to the current classpath and file system. | | +| Password a| String | Password used to protect the truststore. | | +| Type a| String | Type of store. | | +| Algorithm a| String | Encryption algorithm that the truststore uses. | | +| Insecure a| Boolean | If `true`, Mule stops performing certificate validations. Setting this to `true` can make connections vulnerable to attacks. | | +|=== + +[[UploadPartCopyResponse]] +=== Upload Part Copy Response + +Configures the upload part copy response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Bucket Key Enabled a| Boolean | Bucket key enabled. | | +| Copy Part Result a| <> | Copy the part result. | | +| Copy Source Version Id a| String | Copy the source version ID. | | +| Request Charged a| String | Request charged. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Sse Customer Algorithm a| String | SSE customer algorithm. | | +| Sse Customer Key MD5 a| String | SSE customer key MD5. | | +| Ssekms Key Id a| String | SSEKMS key ID. | | +|=== + +[[UploadPartResponse]] +=== Upload Part Response + +Configures the upload part response type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| E Tag a| String | ETag. | | +| Bucket Key Enabled a| Boolean | Bucket key enabled. | | +| Request Charged a| String | Request charged. | | +| Server Side Encryption a| String | Server-side encryption. | | +| Sse Customer Algorithm a| String | SSE customer algorithm. | | +| Sse Customer Key MD5 a| String | SSE customer key MD5. | | +| Ssekms Key Id a| String | SSEKMS key ID. | | +|=== + +[[WebsiteConfiguration]] +=== Website Configuration + +Configures the website configuration type. + +[%header,cols="20s,25a,30a,15a,10a"] +|=== +| Field | Type | Description | Default Value | Required +| Error Document Key a| String | Error document key. | | +| Index Document Suffix a| String | Index document suffix. | | +| Redirect Rule a| <> | Redirect rule. | | +| Routing Rules a| Array of <> | Routing rules. | | +|=== + +== See Also + +* xref:connectors::introduction/introduction-to-anypoint-connectors.adoc[Introduction to Anypoint Connectors] +* https://help.mulesoft.com[MuleSoft Help Center] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-studio.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-studio.adoc new file mode 100644 index 0000000000..a232138404 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-studio.adoc @@ -0,0 +1,160 @@ += Using Anypoint Studio to Configure Amazon S3 Connector 6.4 - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector-studio.adoc + +Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. + +To add and configure a connector in Studio: + +. <>. +. <>. +. <>. +. <>. +. <>. +. <>. + +When you run the connector, you can view the app log to check for problems in real time, as described in <>. + +If you are new to configuring connectors in Studio, see xref:connectors::introduction/intro-config-use-studio.adoc[Using Anypoint Studio to Configure a Connector]. +If, after reading this topic, you need additional information about the connector fields, see the xref:amazon-s3-connector-reference.adoc[Amazon S3 Reference]. + +[[create-mule-project]] +== Create a Mule Project + +In Studio, create a new Mule project in which to add and configure the connector: + +. In Studio, select *File > New > Mule Project*. +. Enter a name for your Mule project and click *Finish*. + +[[add-connector-to-project]] +== Add the Connector to Your Mule Project + +Add Amazon S3 to your Mule project to automatically populate the XML code with the connector's namespace and schema location and to add the required dependencies to the project's `pom.xml` file: + +. In the *Mule Palette* view, click *(X) Search in Exchange*. +. In the *Add Dependencies to Project* window, type `amazon s3` in the search field. +. Click *Amazon S3* in *Available modules*. +. Click *Add*. +. Click *Finish*. + +Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. + +[[configure-source]] +== Configure a Source + +A source initiates a flow when a specified condition is met. +You can configure one of these sources to use with Amazon S3: + +* *On Deleted Object* ++ +Initiates access to your app when an Amazon S3 object is deleted ++ +* *On New Object* ++ +Initiates access to your app when an Amazon S3 object is created + +For example, to configure an *On Deleted Object* source, follow these steps: + +. In the *Mule Palette* view, select *Amazon S3 > On Deleted Object*. +. Drag *On Deleted Object* to the Studio canvas. +. On the *On Deleted Object* configuration screen, optionally change the value of the *Display Name* field. +. Specify values for the following fields: ++ +* *Bucket name* + +Name of the bucket containing the multipart upload to abort +* *Notification queue name* + +Amazon SQS queue name used to notify users when a new object is created or deleted in an S3 bucket +If omitted, a default queue name with prefix `MULE-S3-TRIGGER--QUEUE-` is created and used. Where even-type is either `NEW` or `REMOVED`. +NOTE: As the default queue is created (if not specified) and the source uses SQS:Received to poll for the event notifications connector needs following SQS permissions: sqs:CreateQueue, sqs: GetQueueAttributes, sqs: SetQueueAttributes, sqs: GetQueueUrl, sqs: ReceiveMessage, sqs: DeleteMessage* +* *Scheduling Strategy* + +Configures the scheduler that triggers the polling +. Click the plus sign (*+*) next to the *Connector configuration* field to configure a global element that can be used by all instances of the *On Deleted Object* source in the app. +. On the *General* tab, specify the connection information for the connector. +. On the *Advanced* tab, optionally specify reconnection information, including a reconnection strategy. +. Click *Test Connection* to confirm that Mule can connect with the specified server. +. Click *OK*. + +[[add-connector-operation]] +== Add a Connector Operation to the Flow + +When you add a connector operation to your flow, you are specifying an action for that connector to perform. + +To add an operation for Amazon S3, follow these steps: + +. In the *Mule Palette* view, select *Amazon S3* and then select the desired operation. +. Drag the operation onto the Studio canvas to the right of the source. + +[[configure-global-element]] +== Configure a Global Element for the Connector + +When you configure a connector, configure a global element that all instances of that connector in the app can use. +Configuring a global element requires you to provide the authentication credentials that the connector requires to access the target Amazon S3 system. +Amazon S3 supports basic and role authentication. + +To configure the global element for Amazon S3 Connector, follow these steps: + +. Select the operation in the Studio canvas. +. In the configuration screen for the operation, click the plus sign (*+*) next to the *Connector configuration* field to access the global element configuration fields. +. On the *General* tab, in *Connection*, select the <> method to configure. + ++ +You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. +For information about the benefits of using property placeholders and how to configure them, see xref:connectors::introduction/intro-connector-configuration-overview.adoc[Anypoint Connector Configuration]. ++ +. On the *Advanced* tab, optionally specify reconnection information, including a reconnection strategy. +. Click *Test Connection* to confirm that Mule can connect with the specified server. +. Click *OK*. + ++ +Validating a connection with *Test Connection* requires that you have permission in AWS IAM to the action `s3:ListAllMyBuckets`. +If you don’t have this permission, the test fails. +However, you can still use the connector and the operations to which you have access. ++ +Access to operations on Amazon S3 is further controlled through policies. +It is not always possible to validate your credentials before the exact operation for which you have access completes. +This can vary based on the bucket name and other parameters. +For example, the test connection can fail if your credentials have a restricted policy. ++ +[NOTE] +When you specify a FIPS-compliant endpoint in the *Custom Service Endpoint* field, you must also provide the bucket name in the *Test Connection Bucket Name* field. For non-FIPS compliant endpoints,you can specify the bucket name or leave it unspecified. + +[[connection]] +=== Connection (S3) Connection Type + +Enter the following information on the *General* tab of the *Global Element Properties* screen to configure the Connection (S3) connection type: ++ +[%header,cols="30s,70a"] +|=== +|Field |User Action +|Name |Enter the configuration name. +|Connection | Select `Connection`. +|Access Key | Enter the access key provided by Amazon. +|Secret Key | Enter the secret key provided by Amazon. +|=== ++ + +[[configure-storage]] +== Example of Configuring S3-Compatible Storage + +The https://github.com/minio/[MinIO Project] is one example of Amazon S3 storage. +If you configure this storage locally, set the S3 Compatible Storage URL to `+http://127.0.0.1:9000+`. + +[[view-app-log]] +== View the App Log + +To check for problems, you can view the app log as follows: + +* If you’re running the app from Anypoint Platform, the output is visible in the Anypoint Studio console window. +* If you’re running the app using Mule from the command line, the app log is visible in your OS console. + +Unless the log file path is customized in the app’s log file (`log4j2.xml`), you can also view the app log in the default location `MULE_HOME/logs/.log`. + +== Next Steps + +After configuring Studio, see the xref:amazon-s3-connector-examples.adoc[Examples] topic for more configuration ideas. + +== See Also + +* xref:connectors::introduction/introduction-to-anypoint-connectors.adoc[Introduction to Anypoint Connectors] +* xref:connectors::introduction/intro-config-use-studio.adoc[Using Anypoint Studio to Configure a Connector] +* xref:amazon-s3-connector-reference.adoc[Amazon S3 Connector Reference] +* https://help.mulesoft.com[MuleSoft Help Center] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-troubleshooting.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-troubleshooting.adoc new file mode 100644 index 0000000000..f314317908 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-troubleshooting.adoc @@ -0,0 +1,103 @@ += Troubleshooting Amazon S3 Connector 6.4 - Mule 4 + +To troubleshoot Anypoint Connector for Amazon S3 (Amazon S3 Connector), become familiar with the information about interpreting commonly thrown exception messages. + +include::connectors::partial$ssl-logs.adoc[] + +include::connectors::partial$verbose-exception-logs.adoc[] + +include::connectors::partial$verbose-logs-org.adoc[] + +== Understand Commonly Thrown Exceptions + +Here is a list of commonly thrown exception messages and how to interpret them: + +* S3:BAD_REQUEST + + The input or payload is invalid. + +* S3:BUCKET_ALREADY_EXISTS + + The bucket name you specify already exists. + +* S3:BUCKET_ALREADY_OWNED_BY_YOU + + The bucket you create already exists and is owned by you. + +* S3:CONNECTIVITY + + A connection cannot be established. + +* S3:FORBIDDEN + + There is a `403` forbidden error, for example, there are missing permissions. + +* S3:GLACIER_EXPEDITED_RETRIEVAL_NOT_AVAILABLE + + Expedited retrieval is not available. + +* S3:INTERNAL_ERROR + + There is an internal error, such as a server issue or a temporary glitch. + +* S3:INVALID_OBJECT_STATE + + The object state is invalid with the action. + +* S3:MALFORMED_XML + + The XML you send is malformed. + +* S3:NO_SUCH_KEY + + The key you specify does not exist. + +* S3:NO_SUCH_LIFECYCLE_CONFIGURATION + + The lifecycle configuration you specify does not exist. + +* S3:NO_SUCH_TAG_SET + + The tag set you specify does not exist. + +* S3:NO_SUCH_UPLOAD + + The upload you specify does not exist. + +* S3:OBJECT_ALREADY_IN_ACTIVE_TIER + + The object is already in the active tier. + +* S3:OPERATION_ABORTED + + The operation is aborted because there is another in-progress action against the same resource. + +* S3:RESTORE_ALREADY_IN_PROGRESS + + The restore is already in progress. + +* S3:RETRY_EXHAUSTED + + The maximum number of retries for the operation is reached. + +* S3:S3_ERROR + + An error occurs in Amazon S3. + +* S3:SERVER_BUSY + + The server is busy. + +* S3:SERVICE_ERROR + + There is a service error. + +* S3:REQUEST_TIMEOUT + + The Put Object operation had a request timeout. + +== See Also + +* xref:connectors::introduction/introduction-to-anypoint-connectors.adoc[Introduction to Anypoint Connectors] +* xref:amazon-s3-connector-reference.adoc[Amazon S3 Connector Reference] +* https://help.mulesoft.com[MuleSoft Help Center] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc new file mode 100644 index 0000000000..b4ff2f7479 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-upgrade-migrate.adoc @@ -0,0 +1,318 @@ += Upgrading and Migrating Amazon S3 Connector to Version 6.x - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector-upgrade-migrate.adoc + +Upgrade Anypoint Connector for Amazon S3 (Amazon S3 Connector) to version 6.x. + +== Supported Upgrade Paths + +[%header,"cols=50a,50a"] +|=== +|From Version | To Version +|5.8.0 |6.2.x +|=== + +== Changes in This Release + +This connector is now migrated to AWS SDK for Java 2.x. This release contains the following changes: + +* Connection Types +** The *Basic* and *Role* connection types are no longer available. Now, the new *Connection (S3)* connection type covers both connection types. +** The *Session Token* parameter is removed. + +* Operations +** The following operations are added: +*** *Head Object* +*** *List Object Versions* +*** *Restore Object* +*** *Select Object Content* +** Some operation names are changed: +*** *Create Object* is now *Put Object*. +*** *Delete Bucket Tagging Configuration* is now *Delete Bucket Tagging*. +*** *Delete Bucket Website Configuration* is now *Delete Bucket Website*. +*** *Get Bucket Cors Configuration* is now *Get Bucket Cors*. +*** *Get Bucket Logging Configuration* is now *Get Bucket Logging*. +*** *Get Bucket Tagging Configuration* is now *Get Bucket Tagging*. +*** *Get Bucket Versioning Configuration* is now *Get Bucket Versioning*. +*** *Get Bucket Website Configuration* is now *Get Bucket Website*. +*** *Get Object Metadata* is now *Get Object Attributes*. +*** *Initiate Multipart Upload* is now *Create Multipart Upload*. +*** *List Versions* is now *List Object Versions*. +*** *Set Bucket Acl* is now *Put Bucket Acl*. +*** *Set Bucket Cors Configuration* is now *Put Bucket Cors*. +*** *Set Bucket Lifecycle Configuration* is now *Put Bucket Lifecycle Configuration*. +*** *Set Bucket Logging Configuration* is now *Put Bucket Logging*. +*** *Set Bucket Notification Configuration* is now *Put Bucket Notification Configuration*. +*** *Set Bucket Policy* is now *Put Bucket Policy*. +*** *Set Bucket Tagging Configuration* is now *Put Bucket Tagging*. +*** *Set Bucket Versioning Configuration* is now *Put Bucket Versioning*. +*** *Set Bucket Website Configuration* is now *Put Bucket Website*. +*** *Set Object Acl* is now *Put Object ACL*. + + +* Parameters +** Some operations now contain the following parameters: +*** *Bucket Tags* +*** *Bytes range* +*** *Config Ref* +*** *Completed Parts* +*** *Location Constraint* +*** *Not matching ETag* +*** *Notification Configuration* +*** *Object ACL* +*** *Object identifiers* +*** *Page size* +*** *Part Number* +*** *Target Value* +*** *Target Variable* +** Some operations no longer contain the following parameters: +*** *Content* +*** *Delimiter* +*** *Encoding Type* +*** *End* +*** *File Offset* +*** *First Byte* +*** *Force* +*** *Is Last Part* +*** *Last Byte* +*** *Max Uploads* +*** *Md5 Digest* +*** *Modified Since* +*** *Part ETags* +*** *Part Size* +*** *Region* +*** *Start* +*** *Tag Sets* +*** *Topic Configurations* +*** *Unmodified Since* +*** *Version Id* +** Some parameter names are changed: +*** *Key* is now *Object key*. +*** *Source Key* is now *Source object key*. +*** *Destination Key* is now *Destination object key*. +*** *Canned ACL* is now *Acl* or *Object ACL*. *Acl* in *Create bucket* now contains less enumerations. +*** *Bucket Name* is now *Bucket*. +*** *Version Id* is now *Object version id*. +*** *Policy Text* is now *Policy*. +*** *Bucket Website Configuration* is now *Website Config*. +*** *Matching ETag Constraints* is now *Matching ETag*. +** Some parameter names are changed from title case to sentence case, for example, *Bucket Name* is changed to *Bucket name*. + +* Sources +** The *On Deleted Object* source now contains the *Folder* and *Config Ref* parameters. +** The *On New Object* source now contains the *Folder*, *Queue Name*, and *Config Ref* parameters. + +* Object Types +** The following object types are added: +*** Api Checksum +*** Api Copy Object Result +*** Api Copy Part Result +*** Api Csv Input +*** Api Csv Output +*** Api Get Object Attributes Parts +*** Api Initiator +*** Api Input Serialization +*** Api Object Part +*** Api Object Version +*** Api Output Serialization +*** Api S3 Object +*** Api Scan Range +*** Bucket Acl Response +*** Bucket Cors Response +*** Bucket Notification Response +*** Bucket Policy Response +*** Bucket Response +*** Bucket Tagging Response +*** Bucket Versioning Response +*** Bucket Website Response +*** Complete Multipart Upload Response +*** Condition +*** Copy Object Response +*** Create Multipart Upload Response +*** Filter Rule +*** Get Object Acl Response +*** Get Object Attributes Response +*** Head Object Response +*** Lambda Function Configuration +*** Lifecycle Configuration +*** Lifecycle Rule +*** Lifecycle Rule Filter +*** List Buckets Response +*** Logging Status +*** Multipart Part +*** Notification Configuration Filter +*** Proxy Configuration +*** Put Object Response +*** Queue Configuration +*** Restore Object Response +*** Role +*** S3 Key Filter +*** S3 Object Trigger Response +*** Tag +*** Topic Configuration +*** Upload Part Copy Response +*** Upload Part Response +*** WebsiteConfiguration +** The following object types are removed: +*** Access Control List Attributes +*** BLC Rule +*** Bucket +*** Bucket Logging Configuration +*** Bucket Website Configuration +*** Complete Multipart Upload Result +*** Copy Part Result +*** Key Version +*** Multipart Upload Listing +*** Object Metadata Parameter Group +*** Object Result +*** Part ETag +*** Part Listing +*** Part Summary +*** Routing Rule Condition +*** S3 Object Attributes +*** S3 Object Summary +*** S3 Version Summary +*** Upload Part Result + +* Error Types +** The following error types are added: +*** S3:BAD_REQUEST +*** S3:CONNECTIVITY +*** S3:FORBIDDEN +*** S3:GLACIER_EXPEDITED_RETRIEVAL_NOT_AVAILABLE +*** S3:NO_SUCH_TAG_SET +*** S3:OBJECT_ALREADY_IN_ACTIVE_TIER +*** S3:RETRY_EXHAUSTED +*** S3:S3_ERROR +*** S3:SERVER_BUSY +*** S3:SERVICE_ERROR +** The following error types are removed: +*** S3:ACCESS_DENIED +*** S3:ACCOUNT_PROBLEM +*** S3:AMBIGUOUS_GRANT_BY_EMAIL_ADDRESS +*** S3:BAD_DIGEST +*** S3:BUCKET_ALREADY_EXISTS +*** S3:BUCKET_ALREADY_OWNED_BY_YOU +*** S3:BUCKET_NOT_EMPTY +*** S3:CREDENTIALS_NOT_SUPPORTED +*** S3:CROSS_LOCATION_LOGGING_PROHIBITED +*** S3:ENTITY_TOO_LARGE +*** S3:ENTITY_TOO_SMALL +*** S3:EXPIRED_TOKEN +*** S3:ILLEGAL_VERSIONING_CONFIGURATION_EXCEPTION +*** S3:INCOMPLETE_BODY +*** S3:INCORRECT_NUMBER_OF_FILES_IN_POST_REQUEST +*** S3:INLINE_DATA_TOO_LARGE +*** S3:INTERNAL_ERROR +*** S3:INVALID_ACCESS_KEY_ID +*** S3:INVALID_ADDRESSING_HEADER +*** S3:INVALID_ARGUMENT +*** S3:INVALID_BUCKET_NAME +*** S3:INVALID_BUCKET_STATE +*** S3:INVALID_DIGEST +*** S3:INVALID_ENCRYPTION_ALGORITHM_ERROR +*** S3:INVALID_LOCATION_CONSTRAINT +*** S3:INVALID_OBJECT_STATE +*** S3:INVALID_PART +*** S3:INVALID_PART_ORDER +*** S3:INVALID_PAYER +*** S3:INVALID_POLICY_DOCUMENT +*** S3:INVALID_RANGE +*** S3:INVALID_REQUEST +*** S3:INVALID_RESPONSE_PRESIGNEDURL_MALFORMED +*** S3:INVALID_SOAP_REQUEST +*** S3:INVALID_SECURITY +*** S3:INVALID_STORAGE_CLASS +*** S3:INVALID_TARGET_BUCKET_FOR_LOGGING +*** S3:INVALID_TOKEN +*** S3:INVALID_URI +*** S3:KEY_TOO_LONG +*** S3:MALFORMED_ACL_ERROR +*** S3:MALFORMED_POST_REQUEST +*** S3:MALFORMED_XML +*** S3:MAX_MESSAGE_LENGTH_EXCEEDED +*** S3:MAX_POST_PRE_DATA_LENGTH_EXCEEDED_ERROR +*** S3:METADATA_TOO_LARGE +*** S3:METHOD_NOT_ALLOWED +*** S3:MISSING_ATTACHMENT +*** S3:MISSING_CONTENT_LENGTH +*** S3:MISSING_REQUEST_BODY_ERROR +*** S3:MISSING_SECURITY_ELEMENT +*** S3:MISSING_SECURITY_HEADER +*** S3:NO_LOGGING_STATUS_FOR_KEY +*** S3:NO_SUCH_BUCKET +*** S3:NO_SUCH_BUCKET_POLICY +*** S3:NO_SUCH_KEY +*** S3:NO_SUCH_LIFECYCLE_CONFIGURATION +*** S3:NO_SUCH_UPLOAD +*** S3:NO_SUCH_VERSION +*** S3:NOT_IMPLEMENTED +*** S3:NOT_SIGNED_UP +*** S3:OPERATION_ABORTED +*** S3:PERMANENT_REDIRECT +*** S3:PRECONDITION_FAILED +*** S3:REDIRECT +*** S3:REQUEST_IS_NOT_MULTI_PART_CONTENT +*** S3:REQUEST_TIME_TOO_SKEWED +*** S3:REQUEST_TORRENT_OF_BUCKET_ERROR +*** S3:RESTORE_ALREADY_IN_PROGRESS +*** S3:SERVICE_UNAVAILABLE +*** S3:SIGNATURE_DOES_NOT_MATCH +*** S3:SLOW_DOWN +*** S3:TEMPORARY_REDIRECT +*** S3:TOKEN_REFRESH_REQUIRED +*** S3:TOO_MANY_BUCKETS +*** S3:UNEXPECTED_CONTENT +*** S3:UNKNOWN +*** S3:UNRESOLVABLE_GRANT_BY_EMAIL_ADDRESS +*** S3:USER_KEY_MUST_BE_SPECIFIED + +== Requirements + +Ensure your system meets the following compatibility requirements before you perform the upgrade: + +[%header%autowidth.spread] +|=== +|Application/Service|Version +|Mule |4.3.0 and later +|AWS SDK for Java |2.17.148 +|=== + +== Upgrade Prerequisites + +Before you perform the upgrade, create a backup of your files, data, and configuration in case you need to restore to the previous version. + +== Upgrade Steps + +Follow these steps to perform the upgrade to version 6.0.0: + +. In Anypoint Studio, create a Mule project. +. In the *Mule Palette* view, click *Search in Exchange*. +. In *Add Dependencies to Project*, enter `amazon s3` in the search field. +. In *Available modules*, select *Amazon S3* and click *Add*. +. Click *Finish*. +. Verify that the Amazon S3 dependency version is 6.0 in the `pom.xml` file in the Mule project. + +Studio upgrades the connector automatically. + +== Post-Upgrade Steps + +After you install the latest version of the connector, verify that your error handling is updated to work with the minor changes in error codes in this version of the connector. + +== Verify the Upgrade + +After you install the latest version of the connector, follow these steps to verify the upgrade: + +. In Studio, verify that there are no errors in the *Problems* or *Console* views. +. Verify that there are no problems in the project `pom.xml` file. +. Test the connection to verify that the operations work. + +== Revert the Upgrade + +If it is necessary to revert to the previous version of Amazon S3, change the `mule-amazon-s3` dependency version in the project's `pom.xml` file to the previous version. + +You must update the project's `pom.xml` file in Anypoint Studio. + +== See Also + +* xref:connectors::introduction/introduction-to-anypoint-connectors.adoc[Introduction to Anypoint Connectors] +* https://help.mulesoft.com[MuleSoft Help Center] diff --git a/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc new file mode 100644 index 0000000000..73234126a5 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/amazon-s3-connector-xml-maven.adoc @@ -0,0 +1,74 @@ += Amazon S3 Connector 6.4 XML and Maven Support - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector-xml-maven.adoc + +Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Studio: + +* If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can access the connector from your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. +* If you add the connector in Studio, Studio automatically populates the XML code with the connector's namespace and schema location and it also adds a dependency to the `pom.xml` file. + +== Add a Namespace for the Connector + +Paste the following code inside the `` tag of the header of your configuration XML: + +[source,xml,linenums] +---- +http://www.mulesoft.org/schema/mule/s3 +http://www.mulesoft.org/schema/mule/s3/current/mule-s3.xsd +---- + +This example shows how the namespace statements are placed in the mule XML block: + +[source,xml,linenums] +---- + +---- + +== Add a POM File Dependency + +The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: + +[source,xml,linenums] +---- + + com.mulesoft.connectors + mule-amazon-s3-connector + x.x.x + mule-plugin + +---- + +Replace `x.x.x` with the version that corresponds to the connector you are using. + +To obtain the most up-to-date `pom.xml` file information: + +. Go to https://www.mulesoft.com/exchange/[Anypoint Exchange]. +. In Exchange, click *Login* and supply your Anypoint Platform username and password. +. In Exchange, search for `amazon s3`. +. Select the connector. +. Click *Dependency Snippets* near the upper right of the screen. + +== Next Step + +After creating your namespace and `pom.xml` file, you can try the xref:amazon-s3-connector-examples.adoc[Example]. + +== See Also + +* xref:connectors::introduction/introduction-to-anypoint-connectors.adoc[Introduction to Anypoint Connectors] +* https://help.mulesoft.com[MuleSoft Help Center] diff --git a/amazon-s3/6.4/modules/ROOT/pages/index.adoc b/amazon-s3/6.4/modules/ROOT/pages/index.adoc new file mode 100644 index 0000000000..c25fb8dc78 --- /dev/null +++ b/amazon-s3/6.4/modules/ROOT/pages/index.adoc @@ -0,0 +1,81 @@ += Amazon S3 Connector 6.4 - Mule 4 +:page-aliases: connectors::amazon/amazon-s3-connector.adoc + + +Anypoint Connector for Amazon S3 (Amazon S3 Connector) provides connectivity to the Amazon S3 API, enabling you to interface with Amazon S3 to store objects, download and use data with other AWS services, and build applications that require internet storage. + +Instant access to the Amazon S3 API enables seamless integrations between Amazon S3 and other databases, CMS applications such as Drupal, and CRM applications such as Salesforce. Use Amazon S3 to store and retrieve any amount of data at any time, from anywhere on the web. You can accomplish these tasks by using the simple and intuitive web interface of the AWS Management Console. + +AWS SDK for Java provides a Java API for AWS infrastructure services. +The Amazon S3 connector is built using the SDK for Java. + +For compatibility information and fixed issues, see the xref:release-notes::connector/amazon-s3-connector-release-notes-mule-4.adoc[Amazon S3 Connector Release Notes]. + +For a major release, see xref:amazon-s3-connector-upgrade-migrate.adoc[Upgrading and Migrating]. + +== About Connectors + +Anypoint connectors are Mule runtime engine extensions that enable you to connect to APIs and resources on external systems, such as Salesforce, Amazon S3, ServiceNow, and Twitter. + +== Before You Begin + +To use this connector, you must be familiar with: + +* The Amazon S3 API +* Anypoint Connectors +* Mule runtime engine (Mule) +* Elements and global elements in a Mule flow +* Creating a Mule app using Anypoint Studio (Studio) + +Before creating an app, you must have: + +* Credentials to access the Amazon S3 target resource +* Anypoint Platform +* Anypoint Studio version 7.x or later +* Amazon Web Services +* AWS Identity and Access Management (IAM) credentials + +[NOTE] +For the Amazon S3 operations to work, you need to enable or update the subset of the overall list of actions in the Amazon S3 bucket to specify that the AWS account has access these actions. + +== Common Use Cases for the Connector + +Common use cases for Amazon S3 Connector include: + +* *Storage Service* ++ +Store, access, download, retrieve, or display data. For example, you can store an image from a URL in Amazon S3 and then retrieve and display the image, or create an image link in Amazon S3 and then update the status and image link on Twitter. + +* *App-Building with Native Cloud-Based Storage* ++ +Connect your applications to scalable Amazon S3 buckets and build applications that require internet storage. + +* *Data Backup and Archive* ++ +Create seamless integrations between Amazon S3 and other databases, CMS applications such as Drupal, CRM applications such as Salesforce, ERP systems, EDI systems, or fulfillment systems, and archive necessary data. + +* *Business Intelligence* ++ +Drive business intelligence and optimize operational outcomes by leveraging Amazon S3 as a data lake and extract valuable insights using query-in-place, analytics, and machine learning tools. + +For examples of these use cases, refer to xref:amazon-s3-connector-examples.adoc[Amazon S3 Connector Examples]. + +== Authentication Types + +Amazon S3 connections use the following authentication type: + +* Connection (S3) ++ +Uses the S3 connection type, which covers both the Basic and Role connections. + +For information about configuring this authentication type, see xref:amazon-s3-connector-studio.adoc[Using Anypoint Studio to Configure Amazon S3]. + +== Next Step + +After you complete the prerequisites, you are ready to create your own app and configure the connector using xref:amazon-s3-connector-studio.adoc[Anypoint Studio]. + +== See Also + +* xref:connectors::introduction/introduction-to-anypoint-connectors.adoc[Introduction to Anypoint Connectors] +* xref:connectors::introduction/intro-use-exchange.adoc[Use Exchange to Discover Connectors, Templates, and Examples] +* https://help.mulesoft.com[MuleSoft Help Center]