Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

In this article

Table of Contents
minLevel1
maxLevel2
absoluteUrltrue

...

You can use this Snap to list the attributes of S3 objects in a given specific bucket matching the prefix. The attributes provided in the output document are bucket, objectKey, path, size, lastModified and owner. It internally lists all S3 objects with a given the specified bucket name and prefix, and then applies the filter if any. Note that

AWS S3 does not define any folder object and the '/' characters are part of the S3 object key names.

...

Snap Type

<Snap name> The S3 Browser Snap is a READ/WRITE/PARSE/TRANSFORM/FLOW/FORMATRead-type Snap that reads /fetches/writes/parses/executes/transforms/calls/creates… objects from S3.

Prerequisites

None.

Support for Ultra Pipelines 

...

Limitations and Known Issues

None.

Snap Views

Type

Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

  • Min: 0

  • Max: 1

  • Mapper

  • S3 Copy

  • ..

  • Requires the EDI data and internal ID as a JSON document.

    Key/value pairs used to evaluate expression properties in this Snap. 

    Output

    Document

    • Min: 1

    • Max

    : 1
    • ..

    • ..

    The EDI transaction ID and order confirmation
    • : 2

    • S3 Download

    • Mapper

    The output displays the following attributes:

    • bucket: The S3 bucket name.

    • objectKey: The S3 object with the prefix.

    • path: The path to the S3 bucket.

    • size: The size of the S3 object.

    • lastModified: The date when the S3 object was last modified.

    • storage-class: The Storage Class field, which indicates the archived status of the S3 object.

    • ownerDisplayName: The display name of the S3 owner.

    • ownerID: The ID of the S3 owner.

    The attributes for each S3 object matching the specific Snap field values. For example, if you have the following S3 objects with the prefix "foo/" in the bucket "mrtest":

    Info
    • foo/bar/ban

    • foo/bar/bash

    • foo/bar/baz

    • foo/batbat/baz

    • foo/boo

    If the S3 Browser Snap has the following properties, then the Snap produces output documents for all the five S3 objects.

    • Bucket: mrtest

    • Prefix:  foo/

    • Filter:   **

    • Delimiter:

    If the S3 Browser Snap has the following properties, then the Snap produces only one output document for foo/boo.

    • Bucket: mrtest

    • Prefix:  foo/

    • Filter:   **

    • Delimiter: /

     

    Note

    When you use the Cross Account IAM Role in the S3 account, the ownerDisplayName and ownerID fields may be empty in the 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 while running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab

    . The available options are

    :

    • Stop Pipeline Execution: Stops the current pipeline execution when the Snap encounters an error.

    • Discard Error Data and Continue: Ignores the error, discards that record, and continues with the

    rest of the
    • remaining records.

    • Route Error Data to Error View: Routes the error data to an error view without stopping the Snap execution.

    Learn more about Error handling in Pipelines.

    Snap Settings

    Info
    • Asterisk (*): Indicates a mandatory field.

    • Suggestion icon ((blue star)): Indicates a list that is dynamically populated based on the configuration.

    • Expression icon ( (blue star) ): Indicates whether the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.

    • Add icon ((blue star)): Indicates that you can add fields in the fieldset.

    • Remove icon ((blue star)): Indicates that you can remove fields from the fieldset.

    Field Name

    Field Type

    Field Dependency

    Description

    Label*

    Default ValueS3 Browser
    Example:

     S3 Browser

    Browse IT Resources

    String

    N/A

    The name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your Pipeline

    Specify a unique name for the Snap.

    Bucket*

    Default Value: N/A

    Example

    Examples: 

    (an example of <S3_bucket_name>@<s3_endpoint>)
    (an example of <S3_bucket>@<VPC_S3_endpoint>)
    • Example of S3 Express One Zone bucket:

      • snapexpress--usw2-az2--x-s3

    String/Expression/Suggestion

    N/A

    Specify or select the S3 bucket name, from where the S3 objects are to be listed.

    A
    Note

    Do not add S3:/// before the bucket name

    can be selected from the suggested list.

    , because the Snap can fail.

    Bucket names are unique globally and can be accessed without

    its

    the region name in most cases. If you cannot access a bucket name

    you use cannot be accessed

    without its region name, you can specify the region information

    can be specified as in Note that, when a wrong region name is given, if

    with the following syntax:

    <S3_bucket_name>@<region_name>

    <S3_bucket_name>@<endpoint>

    <endpoint> also applies to VPC (Virtual Private Cloud) S3 endpoint.

    Note: If you enter an incorrect region name, but the bucket name is valid, the AWS S3 service

    may

    might successfully access the bucket without

    any error. 

    errors.

    • You can access an S3 bucket in an S3 Virtual Private Cloud (VPC) endpoint by specifying the bucket name with the following syntax:

      • <S3_bucket_name>@<VPC_S3_endpoint>

    • You can access an S3 Express One Zone bucket with the following syntax:

      • <bucket-name>--<region>-<available-zone>--x-s3

    • S3 Express One Zone does not support the following bucket name pattern:

      • <bucket>@<region_info>.

    • S3 Express One Zone does not support VPC.

    Prefix

    Default Value:

    [

    None

    ]


    Examples

    • test

    • test/

    • abc/xyz/

    Integer

    String/Expression/Suggestion

    N/A

    Specify the prefix of S3 object key names.

    If

    • When you specify the Bucket and Prefix

    are given and all other properties are at default values
    • field values and leave default values for the remaining fields, the Snap lists all S3 objects matching the prefix in the bucket.

    An

    • You can select an object key

    can be selected
    • from the suggested list and

    edited
    • use it for the prefix. The maximum length of the suggested list is 1,000.

    If Prefix is expression-enabled, it can be evaluated from an input header document as well as a pipeline parameter.Filter
    • S3 Express One Zone only supports prefixes that end in a delimiter.

    Filter (Glob)

    Default Value:

    [None]

    **
    Examples

    • *.csv Matches an object name that represents a file name ending in .csv

    • * .* Matches object names containing a dot

    • {.csv, .json} Matches object names ending with .csv or .json

    • foo.? Matches object names starting with foo. and a single character extension

    • home/*/*Matches home/gus/data

    • home/**. Matches home/gus and home/gus/data

    Integer

    String/Expression

    N/A

    Specify the filter the Snap should use internally to list all S3 objects

    first matching given bucket and prefix. Filter

    .

    The Snap matches the specified Bucket and Prefix and then applies the filter. A glob pattern of <Prefix> + <Filter> is applied to the entire string of each S3 object key.

    Filter is a


    The definition of the glob pattern

    which

    is

    defined

    as

    following

    follows:

    • The * character matches zero or more characters of an S3 object name without crossing '/' boundaries.

    • The ** characters

    matches
    • match zero or more characters crossing '/' boundaries.

    • The ? character matches exactly one character of a name component.

    • The backslash character (\) is used to escape characters that would otherwise be interpreted as special characters. The expression \\ matches a single backslash and "\{" matches a left brace

    for example
    • .

    • The [ ] characters are

    a
    • bracket expression

    that match
    •  that matches a single character of a name component out of a set of characters. For example, [abc] matches "a", "b", or "c".

    The
    • You may use the hyphen (-)

    may be used
    • to specify a range, so [a-z] specifies a range that matches from "a"

    to
    • through "z" (inclusive). These forms can be mixed so [abce-g] matches "a", "b", "c", "e", "f" or "g". If the character after the [ is a ! then it is used for negation so [!a-c] matches any character except "a", "b", or "c".

    Within
    • In a bracket expression, the *, ? and \ characters match themselves. The (-) character matches itself if it is the first character

    within
    • in the brackets, or the first character after the ! if negating.

    • The { } characters are a group of subpatterns, where the group matches if any subpattern in the group matches. The "," character is used to separate the subpatterns. Groups cannot be nested.

    • Leading period and dot characters in names are treated as regular characters in match operations. For example, the "*" glob pattern matches file name ".login".

    Show Advanced Properties

    Default Value: Deselected

    Checkbox

    N/A

    Displays Advanced Properties when you select this checkbox.

    Select this checkbox to display the advanced properties.
    Deselect

    the

    this checkbox to hide the advanced properties.

    Maximum Object Keys

    Default Value: All
    Example: 2500

    String/Integer/Expression

    Appears on selecting Show Advanced Properties checkbox.

    Maximum

    Specify the maximum number of object keys at the output view. ‘All’ or an empty field produces all matching object key names

    .Examples: 2500

    .

    If the Delimiter is blank, the Maximum Object Keys are the number of object keys in the first output view plus the number of common prefixes in the second output view regardless of the the second output view being open or closed.

    Ignore Empty Result

    Default Value:

    AllIgnore Empty Result

    Selected

    Checkbox

    Appears on selecting Show Advanced Properties checkbox.

    If selected and

    Select this checkbox if you want the Snap to produce no output when there is no matching S3 object key. Else, the Snap

    produces no output document, and if not selected, an empty document.Default Value: Selected

    outputs a blank document when there are no matching S3 object keys.

    Maximum Retries*

    Default Value: 3

    Examples

    Example: 5

    Integer/Expression

    Appears on selecting Show Advanced Properties checkbox.

    Specify the maximum number of retry attempts

    to

    to perform in case of a temporary network loss.

    Pass Through

    Default Value:

    Not Selected

    Deselected

    Checkbox

    Appears on selecting Show Advanced Properties checkbox.

    Select this checkbox to pass the input document to the output view as a value

    to

    under the 'original' key .

    Delimiter


    Default Value:

    [

    None

    ]


    Examples

    Example: /

    Integer

    String/Expression

    Appears on selecting Show Advanced Properties checkbox.

    Optional

    Specify an optional delimiter

    that causes

    to produce object keys that contain the same string between the prefix and the first occurrence of the delimiter.

    For example, a

    A delimiter '/' causes the Snap to produce a

    non-recursive

    nonrecursive object-key listing.

    When the Delimiter field is not empty and if there is a common prefix, it is displayed in the second output view. The common prefix is similar to a subfolder with one or more S3 objects in it.

    Snap Execution

    Default ValueValidate & Execute
    Example:

    Validate &

    Execute only

    Dropdown list

    N/A

    Select one of the three modes in which the Snap executes. Available options are:

    • Validate & Execute: Performs limited execution of the Snap, and generates a data preview during Pipeline validation. Subsequently, performs full execution of the Snap (unlimited records) during Pipeline runtime.

    • Execute only: Performs full execution of the Snap during Pipeline execution without generating preview data.

    • Disabled: Disables the Snap and all Snaps that are downstream from it.

    Troubleshooting

    ...

    Error

    ...

    Reason

    ...

    Resolution

    ...

    Account validation failed.

    ...

    The Pipeline ended before the batch could complete execution due to a connection error.

    ...

    Verify that the Refresh token field is configured to handle the inputs properly. If you are not sure when the input data is available, configure this field as zero to keep the connection always open.

    Examples

    Excluding Fields from the Input Data Stream

    We can exclude the unrequired fields from the input data stream by omitting them in the Input schema field set. This example demonstrates how we can use the <Snap Name> to achieve this result:

    ...

    Example

    Basic Use Case - Managing Data in S3

    This basic use case demonstrates how to perfrom the following operations using the Amazon S3 Snaps:

    • Upload a single JSON file in the S3 object

    • Copy the file

    • List the S3 Object and its attributes

    • Download the file

    • Delete the file

    ...

    1. Configure key-value pairs containing parameters to pass to the Pipeline during execution.

      Image Added
    2. Configure the JSON Generator Snap with sample data as follows.

      Image Added
    3. Image Added

      Configure the JSON Formatter Snap to format the data. You can view the JSON binary data in the output preview of the Snap.

    4. Configure the S3 Upload Snap to upload the binary data to S3 objects residing in the S3 bucket.

      Image Added
    5. Image Added

      Configure the S3 Copy Snap to copy the S3 object from source folder to target folder.

      Image Added
    6. Image Added

      Configure the S3 Browser Snap to list the attributes for S3 objects.

      S3 Browser confiiguration settingsImage Added
    7. Image Added

      Configure the S3 Download Snap to download S3 objects.

      Image Added
    8. Image Added

      As the output is in binary format, you need to convert the binary data to document data using the Binary to Document Snap.

    9. Configure the S3 Delete Snap to delete the S3 objects. You can view the status of the deleted object in the output preview.

      Image AddedImage Added


    Download this Pipeline

    Downloads

    Info
    1. Download and import the Pipeline into SnapLogic.

    2. Configure Snap accounts as applicable.

    3. Provide Pipeline parameters as applicable.

    Attachments
    patterns*.slp, *.zip
    sortByname

    Snap Pack History

    Insert excerpt
    Amazon S3 Snap Pack
    Amazon S3 Snap Pack
    nameS3 Snap Pack History
    nopaneltrue

    ...