In this article
Overview
You can use this Snap to generate a presigned URL in the output document to access an S3 object. You can use the presigned URL in external applications to read or write S3 objects, for example, Postman, REST Get Snap, and REST Put Snap.
The Snap may produce a presigned URL without any error if Snap properties contain invalid values, and this may cause the external application to fail.
Snap Type
The S3 Presigned Snap is a Read-type Snap.
Prerequisites
None.
Support for Ultra Pipelines
Works in Ultra Pipelines.
Limitations and Known Issues
None.
Snap Views
Type | Format | Number of Views | Examples of Upstream and Downstream Snaps |
---|---|---|---|
Input | Document |
|
|
Output | Document |
|
|
Error | Error handling is a generic way to handle errors without losing data or failing the Snap execution. You can handle the errors that the Snap might encounter when running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab:
Learn more about Error handling in Pipelines. |
Snap Settings
Asterisk ( * ): Indicates a mandatory field.
Suggestion icon (
): Indicates a list that is dynamically populated based on the configuration.
Expression icon (
): Indicates the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.
Add icon (
): Indicates that you can add fields in the fieldset.
Remove icon (
): Indicates that you can remove fields from the fieldset.
Field Name | Field Type | Description |
---|---|---|
Label* Default Value: S3 Presigned | String | Specify a unique name for the Snap. |
Bucket*
Default Value: None
| String/Expression/Suggestion | Specify the S3 bucket name, from where you need to fetch or post the presigned URL. Do not add S3:/// before bucket name, because the Snap can fail.
Note: When you enter an incorrect region name, but the bucket name is valid, the AWS S3 service may successfully access the bucket without any error. |
Object Key Default Value: [None]
| String/Expression/Suggestion | Specify or select the S3 object key name, which may include one or more forward-slash '/' characters. The forward-slash character is part of the S3 object key name, and there is no folder object defined in AWS S3. The Snap uses the existing Object Key value as a prefix to produce the suggested list. The maximum length of the suggested list is 1,000. |
Expire in (seconds) Default Value: 3600 | Integer/Expression | Specify the time in seconds at which the generated presigned URL will expire. Min: 1 |
HTTP Method Default Value: GET | String/Expression | Specify the HTTP method verb to use for the presigned URL. The supported methods are GET and PUT. |
Snap Execution Default Value: | Dropdown list | Select one of the three modes in which the Snap executes. Available options are:
|
Examples
Generating a Presigned URL using GET Method
This example Pipeline demonstrates how to generate a presigned URL to get an S3 object.
Prerequisites: A valid AWS S3 Account
Configure the S3 Download Snap to download the tmp/hello.json object from the mrtest Bucket.
Validate the Pipeline. The output displays the details of the downloaded object from S3 in binary format.
Next, configure the Mapper Snap to transform the binary content message to a string value.
Configure an S3 Presigned Snap to generate a presigned URL to access the tmp/hello.json object using the GET HTTP Method. The validated output displays the generated pre-signed URL.
Configure the REST Get Snap to send the HTTP Get request (the presigned URL).
Validate the REST GET Snap. The output verifies the creation of the S3 object.
Generating a Presigned URL Using PUT Method
This example demonstrates how to generate a presigned URL using HTTP PUT and GET methods.
Configure an S3 Presigned Snap as follows with the PUT HTTP Method.
Validate the Snap—it generates a presignedUrl as highlighted in the following image:
Next, configure the Mapper Snap to pass the message and presignedUrl as inputs to the file that is to be written.
Validate the Maper Snap—it generates the message and the presignedUrl.
Configure the REST Put Snap with $presignedUrl as the Service URL, $content as HTTP Entity, and TEXT as Response entity type. The REST Put Snap creates an S3 object if it does not exist.
Validate the REST Put Snap—it generates the response with the following status and the headers as shown below:
Next, configure the second S3 Presigned Snap with the GET HTTP Method to generate the presigned URL.
Validate the Presigned Snap. The Snap generates the presigned URL with the original input.
Configure the REST Get Snap to verify the creation of the S3 object.
Validate the Snap—it gets the response from the REST API service endpoint and generates the output as shown below:
Downloads
Download and import the Pipeline into SnapLogic.
Configure Snap accounts as applicable.
Provide Pipeline parameters as applicable.
Snap Pack History
Release | Snap Pack Version | Date | Type | Updates |
---|---|---|---|---|
May 2025 | 441patches31347 |
| Latest | Fixed an issue with the Amazon S3 Snaps, where the Snaps failed with an error |
May 2025 | main31019 |
| Stable | Enhanced the Amazon S3 Account with the S3 endpoint field to support connecting to the MinIO server. |
February 2025 | 440patches30496 |
| Latest | Added S3 Poller Snap to the Amazon S3 Snap pack. This Snap enables you to poll the target directory and find file names matching the specified pattern. |
February 2025 | main29887 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
November 2024 | 439patches29535 |
| Latest | Fixed the account validation issue in the Amazon S3 Account. Previously, the account validation failed even when Snap execution was successful within the same account. The fix includes an enhancement, introducing a new Bucket for account validation field that allows you to specify a bucket name for validating the account. |
January 2025 | 439patches29484 |
| Latest | Enhanced the S3 Account to access AWS S3 successfully in the ECS environment with IAM roles. Learn more. |
November 2024 | main29029 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
August 2024 | 438patches28445 |
| Latest | Enhanced the S3 Download Snap with an Enable Staging checkbox that enables you to download an S3 object into a local temporary file. This enhancement addresses the cases where certain downstream Snaps take longer to process large volumes of data, potentially causing a connection reset error and pipeline failure. |
August 2024 | main27765 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
May 2024 | 437patches26643 |
| Latest | Fixed an issue with the S3 Browser Snap that could not initialize the output document properly, causing an error in the downstream Snaps. |
May 2024 | main26341 |
| Stable | Enhanced the S3 Select Snap to capture metadata and lineage information from the input document. |
February 2024 | 436patches25360 |
| Latest | Fixed an issue with the Amazon S3 Snaps that displayed a |
February 2024 | main25112 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
November 2023 | 435patches24238 |
| Latest | Added support for Amazon S3 Express One Zone in the Amazon S3 Snap Pack. |
November 2023 | main23721 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
August 2023 | main22460 |
| Stable | Updated and certified against the current SnapLogic Platform release. |
May 2023 | 433patches21816 |
| Latest | The Amazon S3 Snaps automatically detect the Maximum session duration value for the Cross-Account IAM role (1 through 12 hours). The Snaps round down the value to the nearest hour. So, if the Snap administrator sets the Maximum session duration at 3 hours and 45 minutes, the Snaps read it as 3 hours. The Snaps also refresh the session before it expires. However, the automatic session refresh does not support the case of very large file upload or download that takes longer than the maximum session duration. |
May 2023 | main21015 |
| Stable | Upgraded with the latest SnapLogic Platform release. |
February 2023 | 432patches20385 |
| Latest | Added support for Ultra Task Pipelines. |
February 2023 | main19844 |
| Stable | Upgraded with the latest SnapLogic Platform release. |
November 2022 | main18944 |
| Stable |
|
October 2022 | 430patches18674 |
| Latest |
|
August 2022 | 430patches17354 |
| Latest | The KMS Region field in the S3 Account now suggests the regions when you click the suggestion |
August 2022 | main17386 |
| Stable | Introduced the Amazon S3 Snap Pack, which enables you to browse, copy, delete, download, or upload objects in S3. This Snap Pack contains the following Snaps:
|