Class: Aws::S3::Types::RestoreObjectRequest

Inherits:
Struct
  • Object
show all
Includes:
Aws::Structure
Defined in:
lib/aws-sdk-s3/types.rb

Overview

Note:

When making an API call, you may pass RestoreObjectRequest data as a hash:

{
  bucket: "BucketName", # required
  key: "ObjectKey", # required
  version_id: "ObjectVersionId",
  restore_request: {
    days: 1,
    glacier_job_parameters: {
      tier: "Standard", # required, accepts Standard, Bulk, Expedited
    },
    type: "SELECT", # accepts SELECT
    tier: "Standard", # accepts Standard, Bulk, Expedited
    description: "Description",
    select_parameters: {
      input_serialization: { # required
        csv: {
          file_header_info: "USE", # accepts USE, IGNORE, NONE
          comments: "Comments",
          quote_escape_character: "QuoteEscapeCharacter",
          record_delimiter: "RecordDelimiter",
          field_delimiter: "FieldDelimiter",
          quote_character: "QuoteCharacter",
          allow_quoted_record_delimiter: false,
        },
        compression_type: "NONE", # accepts NONE, GZIP, BZIP2
        json: {
          type: "DOCUMENT", # accepts DOCUMENT, LINES
        },
        parquet: {
        },
      },
      expression_type: "SQL", # required, accepts SQL
      expression: "Expression", # required
      output_serialization: { # required
        csv: {
          quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
          quote_escape_character: "QuoteEscapeCharacter",
          record_delimiter: "RecordDelimiter",
          field_delimiter: "FieldDelimiter",
          quote_character: "QuoteCharacter",
        },
        json: {
          record_delimiter: "RecordDelimiter",
        },
      },
    },
    output_location: {
      s3: {
        bucket_name: "BucketName", # required
        prefix: "LocationPrefix", # required
        encryption: {
          encryption_type: "AES256", # required, accepts AES256, aws:kms
          kms_key_id: "SSEKMSKeyId",
          kms_context: "KMSContext",
        },
        canned_acl: "private", # accepts private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control
        access_control_list: [
          {
            grantee: {
              display_name: "DisplayName",
              email_address: "EmailAddress",
              id: "ID",
              type: "CanonicalUser", # required, accepts CanonicalUser, AmazonCustomerByEmail, Group
              uri: "URI",
            },
            permission: "FULL_CONTROL", # accepts FULL_CONTROL, WRITE, WRITE_ACP, READ, READ_ACP
          },
        ],
        tagging: {
          tag_set: [ # required
            {
              key: "ObjectKey", # required
              value: "Value", # required
            },
          ],
        },
        user_metadata: [
          {
            name: "MetadataKey",
            value: "MetadataValue",
          },
        ],
        storage_class: "STANDARD", # accepts STANDARD, REDUCED_REDUNDANCY, STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER, DEEP_ARCHIVE, OUTPOSTS
      },
    },
  },
  request_payer: "requester", # accepts requester
  expected_bucket_owner: "AccountId",
}

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#bucketString

The bucket name containing the object to restore.

When using this API with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this operation with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see [Using Access Points] in the *Amazon Simple Storage Service Developer Guide*.

When using this API with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using this operation using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see [Using S3 on Outposts] in the *Amazon Simple Storage Service Developer Guide*.

[1]: docs.aws.amazon.com/AmazonS3/latest/dev/using-access-points.html [2]: docs.aws.amazon.com/AmazonS3/latest/dev/S3onOutposts.html



13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
# File 'lib/aws-sdk-s3/types.rb', line 13250

class RestoreObjectRequest < Struct.new(
  :bucket,
  :key,
  :version_id,
  :restore_request,
  :request_payer,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#expected_bucket_ownerString

The account id of the expected bucket owner. If the bucket is owned by a different account, the request will fail with an HTTP ‘403 (Access Denied)` error.



13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
# File 'lib/aws-sdk-s3/types.rb', line 13250

class RestoreObjectRequest < Struct.new(
  :bucket,
  :key,
  :version_id,
  :restore_request,
  :request_payer,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#keyString

Object key for which the operation was initiated.



13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
# File 'lib/aws-sdk-s3/types.rb', line 13250

class RestoreObjectRequest < Struct.new(
  :bucket,
  :key,
  :version_id,
  :restore_request,
  :request_payer,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#request_payerString

Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. For information about downloading objects from requester pays buckets, see [Downloading Objects in Requestor Pays Buckets] in the *Amazon S3 Developer Guide*.

[1]: docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html



13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
# File 'lib/aws-sdk-s3/types.rb', line 13250

class RestoreObjectRequest < Struct.new(
  :bucket,
  :key,
  :version_id,
  :restore_request,
  :request_payer,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#restore_requestTypes::RestoreRequest

Container for restore job parameters.



13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
# File 'lib/aws-sdk-s3/types.rb', line 13250

class RestoreObjectRequest < Struct.new(
  :bucket,
  :key,
  :version_id,
  :restore_request,
  :request_payer,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end

#version_idString

VersionId used to reference a specific version of the object.



13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
# File 'lib/aws-sdk-s3/types.rb', line 13250

class RestoreObjectRequest < Struct.new(
  :bucket,
  :key,
  :version_id,
  :restore_request,
  :request_payer,
  :expected_bucket_owner)
  SENSITIVE = []
  include Aws::Structure
end