S3 - Put Object

Declaration

<AMAWSS3 ACTIVITY="put_object" BUCKETNAME="text" KEYNAME="text" FILE="text" SESSION="text" />

See Also

Description

Adds (uploads) an object to a bucket.

NOTE: You must have write permissions on a bucket to add an object to it.

IMPORTANT: The S3 activities in AutoMate use the Amazon S3 engine to perform their work. Because of this, you must have a valid Amazon S3 service account to use these activities.

Practical Usage

Puts one or more objects into an S3 bucket.

Parameters

Object Properties

Property
Type
Required
Default
Markup
Description

Put Local File

Text

No

 (Empty)

a)FILE="c:\folder1\file.txt"
b)FILE="c:\folder1\*.txt"
c)FILE="c:\folder1\*.*"

Specifies the local file(s) to upload onto the S3 bucket. To specify more than one file, use wildcard characters (* or ?). To specify multiple objects or wildcard masks, separate them with a pipe symbol (|). Example: *.txt|*.bak

Put Specific String

Text

No

(Empty)

DATA="dataString"

Specifies the text string that should be populated into the object being put into the S3 bucket.

Bucket Name

Text

Yes

(Empty)

BUCKETNAME="MyBucket"

Indicates the name of the bucket in which to put the object(s) into.

 

Key Name

Text

Yes

(Empty)

a)KEYNAME="filename.txt"
b)KEYNAME="*.txt"
c)KEYNAME=*.txt|*.doc"
d)KEYNAME="*.*"

Specifies the key name of the object(s) to be placed in the S3 bucket. A key is the unique identifier for an object within a bucket. To specify more than one object, use wildcard characters (* or ?).

Canned ACL

Text

Yes

Private

ACL="PublicReadWrite"

Sets the S3 canned access policy associated to the object being placed into the bucket.

The available Canned ACL options are:

  • NoACL - No access policies.

  • Private (Default) - Owner gets full control. No one else has access rights.

  • PublicRead - Owner gets full control and the anonymous principal is granted read access.

  • PublicReadWrite - Owner gets full control, the anonymous principal is granted read/write access. Useful policy to apply to a bucket, but is generally not recommended.

  • AuthenticatedRead - Owner gets full control, and any principal authenticated as a registered Amazon S3 user is granted read access.

  • BucketOwnerRead - Object owner gets full control. Bucket owner gets read access. This ACL applies only to objects and is equivalent to Private when used with Create Bucket activity. Use this ACL to let someone other than the bucket owner write content (get full control) in the bucket but still grant the bucket owner read access to the objects.

  • BucketOwnerFullControl - Object owner gets full control. Bucket owner gets full control. Applies only to objects and is equivalent to Private when used with Create Bucket activity. Use this ACL to let someone other than the bucket owner write content (get full control) in the bucket but still grant the bucket owner full rights over the objects.

Timeout (In Minutes)

Number

No

20

TIMEOUT="25"

Specifies the timeout value (in minutes) that should be set for this activity. The value is assigned to the Timeout properties of the requested object used for S3 Put requests. The default value is 20 minutes.

MD5 Digest (Optional)

Text

No

(Empty)

MD5="MD5Value"

The base64 encoded 128-bit MD5 digest of the message used to ensure that data is not corrupted traversing the network. When you use the Content-MD5 option, Amazon S3 checks the object against the provided MD5 value. If they do not match, Amazon S3 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.

Generate MD5 Value

Yes/No

No

No

GENERATEMD5="YES"

Generates an MD5 value used as a message integrity check to verify that the data is the same data that was originally sent.

Content Type (Optional)

Text

No

(Empty)

CONTENTTYPE="text/plain"

A standard MIME type describing the format of the contents (i.e. text/plain).

 

Advanced Properties

Each Amazon S3 object has a set of key-value pairs with which it is associated called Headers or Metadata. Metadata provides important details about an object, such as file name, type, date of creation/modification etc. There are two kinds of metadata in S3; system metadata, and user metadata. System metadata is used and processed by Amazon S3. User metadata (also known as custom header) is specified by you, the user. Amazon S3 simply stores it and passes it back to you upon request.

AutoMate lets you to store your personal information as custom headers or user metadata like name, company name, and phone numbers etc, so that you can distinguish specific files. Using this option, you can add new custom header/user metadata to existing S3 objects, edit default S3 metadata on a bucket or store/upload new objects with custom header or metadata.

Property

Type

Required

Default

Markup

Description

Name

Text

No

(Empty)

HEADER NAME="myHeader"

Specifies the "key" in a key-value pair. This is the handle that you assign to an object.

Value

Text

No

(Empty)

VALUE="theValue"

Specifies the "value" in a key-value pair. This is the content that you are storing for an object.

 

Credentials Properties

These properties allow you to enter a custom set of credentials specific to this activity or link this activity to an existing session.

Property

Type

Required

Default

Markup

Description

Provide Credentials

 

 

 

 

Indicates where this activity's credentials should originate from. Different properties apply depending on the option selected.

The available options are:

  • Custom (Default) - Specifies that a custom set of credentials will be entered for this S3 activity. Select this option if performing a single S3 activity.

  • Session Based - Specifies that credentials should derive from a session created in a previous step with the use of the Create Session activity. This allows several S3 activities to be linked to a specific session.

Access Key

Text

Yes

(Empty)

ACCESSKEY="MyAccessKey"

Specifies the 20-character, alphanumeric string that uniquely identifies a user who owns an s3 account (i.e. 022QF06E7MXBSH9DHM02). This along with a Secret Access Key forms a secure information set that S3 uses to confirm a valid user's identity.

This property is active only if Custom is selected under the Provide Credentials property.

Secret Access Key

Text

Yes

(Empty)

SECRETKEY="SecretKey"

A 40-character string that serves the role as Password to access S3 (i.e. kWcrlUX5JEDGM/LtmEENI/aVmYvHNif5zB+d9+ct). This along with an associated Access Key forms a secure information set that S3 uses to confirm a valid user's identity.

This property is active only if Custom is selected under the Provide Credentials property.

Protocol

Text

No

HTTP

PROTOCOL = "HTTPS"

The protocol that should be used to make requests to the S3 service.

The available options are:

  • HTTP (Default)

  • HTTPS

This property is active only if Custom is selected under the Provide Credentials property.

User Agent

Text

No

AutoMate

USERAGENT="AutoMate"

The value of the HTTP User-Agent header. The User-Agent request-header field contains information about the user agent originating the request. The default User Agent is AutoMate.

This property is active only if Custom is selected under the Provide Credentials property.

Service URL

Text

No

(Empty)

SERVICEURL=

"https://eu-west-1.ec2.amazonaws.com"

The Service URL used to make requests to the S3 service. The Service URL provides the service endpoint.

This property is active only if Custom is selected under the Provide Credentials property.

Maximum retry on error

Number

No

(Empty)

MAXERRORRETRY="4"

Signifies how many times the Amazon S3 engine should retry the request before returning an error.

This property is active only if Custom is selected under the Provide Credentials property.

Proxy Host

Text

No

(Empty)

PROXYHOST="proxy.host.com"

The hostname (server.domain.com) or IP address (xxx.xxx.xxx.xxx) of the proxy server.

This property is active only if Custom is selected under the Provide Credentials property.

Proxy Port

Number

No

(Empty)

PROXYPORT="1028"

The port that should be used to connect to the proxy server.

This property is active only if Custom is selected under the Provide Credentials property.

Session Name

Text

Yes

(Empty)

SESSION="SessionName"

The session name that this activity should originate from. This allows several S3 activities to be linked to a specific session. Numerous sessions can be used within a single task.

This property is active only if Session Based is selected under the Provide Credentials property.

NOTE: Use the Create Session activity to create and name an S3 session.

 

Description Properties

The Description tab allows you to customize the text description of any step as it appears in the Task Builder's Steps Pane.

More on setting custom step description

Error Causes Properties

The Error Causes tab properties allows you to instruct a task step to react only to specific errors or ignore certain errors that should cause it to fail.

More on Error Causes properties

On Error Properties

The On Error tab properties lets you determine what the task should do if a particular step encounters an error as defined in the Error Causes properties.

More about On Error properties

Notes

Expressions, Variables and Functions

All text fields allow the use of expressions such as variables, functions or AutoMate extended functions, which can be entered by surrounding the expression in percentage signs (example: %FileDateTime(myVar)% or %myVar%, %Left('Text',2)%). To help construct these expressions, you can open Expression Builder from these fields by clicking the Insert Expression (%) button or by pressing F2.

More on expressions

More on variables

More on function

More on extended functions
More on the expression builder

Example

The sample code below can be copied and pasted directly into the Steps pane of the Task Builder.

 

 

<AMAWSS3 ACTIVITY="put_object" BUCKETNAME="myBucket" KEYNAME="Book1.xlsx" FILE="C:\Temp\Book1.xlsx" SESSION="ronak" />

 

↑ Top of Page