Amazon Simple Storage Service
Console User Guide (API Version 2006-03-01)
Did this page help you?  Yes | No |  Tell us about it...
« PreviousNext »
View the PDF for this guide.Go to the AWS Discussion Forum for this product.Go to the Kindle Store to download this guide in Kindle format.

Uploading Objects into Amazon S3

When you upload a folder, Amazon S3 uploads all the files and subfolders from the specified folder to your bucket. It then assigns a key value that is a combination of the uploaded file name and the folder name. For example, if you upload a folder /images containing two files, sample1.jpg and sample2.jpg, Amazon S3 uploads the files and then assigns the corresponding object key names images/sample1.jpg, and images/sample2.jpg. Note that the key names include the folder name as a prefix.

If you upload one or more files that are not in a folder, Amazon S3 uploads the files and assigns the file names as the key values for the objects created.

This section explains how to use the AWS Management Console to upload one or more files or entire folders into Amazon S3. Amazon S3 stores all files in the specified bucket.

To upload files and folders into Amazon S3

  1. Sign into the AWS Management Console and open the Amazon S3 console at

  2. In the buckets list, click the name of bucket where you want to upload an object and then click Upload.

  3. (Optional) In the Upload - Select Files wizard, if you want to upload an entire folder, click Enable Enhanced Uploader to install the necessary Java applet.

    You only need to do this step once per console session. After you click Enable Enhanced Uploader and then don't want to use it, you can either refresh the browser, or close and reopen the browser to reset the uploader to the default.


    If you are behind a firewall, you will need to install your organization's supported proxy client for the Java applet to work.

  4. Click Add Files.

  5. In the dialog box that appears, click the file or files that you want to upload, and then click Open.

    • If you enabled the advanced uploader in step 2, you see a Java dialog box titled Select files and folders to upload, as shown.

    • If not, you see the File Upload dialog box associated with your operating system.

  6. Choose one of the following options:

    To...Do this...
    Upload objects immediatelyClick Start Upload. You can skip the rest of this procedure.
    Use Reduced Redundancy Storage or Server-Side Encryption

    Click Set Details, and then select the appropriate check box or boxes.

    Set permissions on the objects

    Click Set Details, click Set Permissions, and then continue.

    Set metadata for your objects

    Click Set Details, click Set Permissions and then continue.

  7. In the Set Permissions dialog box, do the following:

    • Select (the default) or clear the Grant me full control check box.

    • To grant read access to anonymous requests, select the Make everything public check box on the Upload - Set Permissions panel. By default, the check box is cleared, so no access is granted.


    By default, the owner of the upload has full control over all uploaded objects.

  8. To grant access to other users and groups for the objects you are uploading, click Add more permissions.

    In the grantee row that appears:

    • For each permission you grant, an entry is made in the object's Access Control List (ACL). For more information, see Using ACLs in the Amazon Simple Storage Service Developer Guide.

    • If you click Add more permissions, a new Grantee row appears. Each Grantee row maps to a grant in the Access Control List (For more information, see Using ACLs) associated with the object. You can grant permission to a user or one of the predefined Amazon S3 groups.

  9. There are two built-in groups that you can choose from the Grantee box:

    • Authenticated Users—This group consists of any user that has an Amazon AWS Account. When you grant the Authenticated User group permission, any valid signed request can perform the appropriate action. The request can be signed by either an AWS Account or IAM User.

    • Everyone—This group grants anonymous access to your object

    You can grant permission to an AWS account by entering the accounts canonical user ID or email address in the Grantee field. The email address must be the same one they used when signing up for an AWS account. You can grant a grantee any of the following permissions:

    • Open/Download—Enables the account to access the object when they are logged in

    • View Permissions—Can view the permissions associated with the object

    • Edit Permissions—Can edit the permissions associated with the object

  10. To set metadata, click Set Metadata.

    In the Upload - Set Metadata do the following:

    1. If you want the Amazon S3 to infer the content type of the uploaded objects, select the Figure out content types automatically check box (default).

    2. To add custom metadata, click Add more metadata and enter the key-value pairs that you want.

    Amazon S3 object metadata is represented by a key-value pair. User metadata is stored with the object and returned when you download the object. Amazon S3 does not process custom metadata. Custom metadata can be as large as 2 KB, and both the keys and their values must conform to US-ASCII standards. Any metadata starting with prefix x-amz-meta- is treated as user-defined metadata. When you add user-defined metadata, select x-amz-meta- from the Key box and then append the metadata name to it.

  11. Click Start Upload.

    You can watch the progress of the upload from within the Transfers panel.


    To hide the Transfer panel, click None. To open it again, click Transfers.

    When objects upload successfully to Amazon S3, they appear in the Objects and Folders list.

To view file content and properties

  • Do either or both of the following:

    • To view the file content, in the Objects and Folders list, double-click the object name.

    • To view object properties, in the Objects and Folders list, click the object.


      By default your Amazon S3 resources are private. Only the object owner can click the object link and view the object. If you share this link with others, for example add this link to your web pages, Amazon S3 will deny access. The clickable links on your webpage will work only if you make the object public (see Editing Object Permissions ) or you use a pre-signed URL for the clickable link. For more information about pre-signed URL, go to Share an Object with Others in the Amazon Simple Storage Service Developer Guide.