Skip to content

S3  >  Operations  >  write_get_object_response

write_get_object_response

Operation

write_get_object_response async

write_get_object_response(input: WriteGetObjectResponseInput, plugins: list[Plugin] | None = None) -> WriteGetObjectResponseOutput
Note

This operation is not supported for directory buckets.

Passes transformed objects to a GetObject operation when using Object Lambda access points. For information about Object Lambda access points, see Transforming objects with Object Lambda access points in the Amazon S3 User Guide.

This operation supports metadata that can be returned by GetObject, in addition to RequestRoute, RequestToken, StatusCode, ErrorCode, and ErrorMessage. The GetObject response metadata is supported so that the WriteGetObjectResponse caller, typically an Lambda function, can provide the same metadata when it internally invokes GetObject. When WriteGetObjectResponse is called by a customer-owned Lambda function, the metadata returned to the end user GetObject call might differ from what Amazon S3 would normally return.

You can include any number of metadata headers. When including a metadata header, it should be prefaced with x-amz-meta. For example, x-amz-meta-my-custom-header: MyCustomValue. The primary use case for this is to forward GetObject metadata.

Amazon Web Services provides some prebuilt Lambda functions that you can use with S3 Object Lambda to detect and redact personally identifiable information (PII) and decompress S3 objects. These Lambda functions are available in the Amazon Web Services Serverless Application Repository, and can be selected through the Amazon Web Services Management Console when you create your Object Lambda access point.

Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically detects personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.

Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically redacts personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.

Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects stored in S3 in one of six compressed file formats including bzip2, gzip, snappy, zlib, zstandard and ZIP.

For information on how to view and use these functions, see Using Amazon Web Services built Lambda functions in the Amazon S3 User Guide.

Warning

You must URL encode any signed header values that contain spaces. For example, if your header value is my file.txt, containing two spaces after my, you must URL encode this value to my%20%20file.txt.

Parameters:

Name Type Description Default
input WriteGetObjectResponseInput

An instance of WriteGetObjectResponseInput.

required
plugins list[Plugin] | None

A list of callables that modify the configuration dynamically. Changes made by these plugins only apply for the duration of the operation execution and will not affect any other operation invocations.

None

Returns:

Type Description
WriteGetObjectResponseOutput

An instance of WriteGetObjectResponseOutput.

Input

WriteGetObjectResponseInput dataclass

Bases: _SerdeShape

Dataclass for WriteGetObjectResponseInput structure.

Attributes

accept_ranges class-attribute instance-attribute
accept_ranges: str | None = ...

Indicates that a range of bytes was specified.

body class-attribute instance-attribute
body: StreamingBlob = ...

The object data.

bucket_key_enabled class-attribute instance-attribute
bucket_key_enabled: bool | None = ...

Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

cache_control class-attribute instance-attribute
cache_control: str | None = ...

Specifies caching behavior along the request/reply chain.

checksum_crc32 class-attribute instance-attribute
checksum_crc32: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 32-bit CRC32 checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

checksum_crc32_c class-attribute instance-attribute
checksum_crc32_c: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 32-bit CRC32C checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

checksum_crc64_nvme class-attribute instance-attribute
checksum_crc64_nvme: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

checksum_md5 class-attribute instance-attribute
checksum_md5: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 128-bit MD5 digest of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

checksum_sha1 class-attribute instance-attribute
checksum_sha1: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 160-bit SHA1 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

checksum_sha256 class-attribute instance-attribute
checksum_sha256: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the Base64 encoded, 256-bit SHA256 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original GetObject request required checksum validation. For more information about checksums, see Checking object integrity in the Amazon S3 User Guide.

Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.

checksum_sha512 class-attribute instance-attribute
checksum_sha512: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 512-bit SHA512 digest of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

checksum_xxhash128 class-attribute instance-attribute
checksum_xxhash128: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 128-bit XXHASH128 checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

checksum_xxhash3 class-attribute instance-attribute
checksum_xxhash3: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit XXHASH3 checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

checksum_xxhash64 class-attribute instance-attribute
checksum_xxhash64: str | None = ...

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit XXHASH64 checksum of the part. For more information, see Checking object integrity in the Amazon S3 User Guide.

content_disposition class-attribute instance-attribute
content_disposition: str | None = ...

Specifies presentational information for the object.

content_encoding class-attribute instance-attribute
content_encoding: str | None = ...

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

content_language class-attribute instance-attribute
content_language: str | None = ...

The language the content is in.

content_length class-attribute instance-attribute
content_length: int | None = ...

The size of the content body in bytes.

content_range class-attribute instance-attribute
content_range: str | None = ...

The portion of the object returned in the response.

content_type class-attribute instance-attribute
content_type: str | None = ...

A standard MIME type describing the format of the object data.

delete_marker class-attribute instance-attribute
delete_marker: bool | None = ...

Specifies whether an object stored in Amazon S3 is (true) or is not (false) a delete marker. To learn more about delete markers, see Working with delete markers.

e_tag class-attribute instance-attribute
e_tag: str | None = ...

An opaque identifier assigned by a web server to a specific version of a resource found at a URL.

error_code class-attribute instance-attribute
error_code: str | None = ...

A string that uniquely identifies an error condition. Returned in the tag of the error XML response for a corresponding `GetObject` call. Cannot be used with a successful `StatusCode` header or when the transformed object is provided in the body. All error codes from S3 are sentence-cased. The regular expression (regex) value is `"^[A-Z][a-zA-Z]+$"`.

error_message class-attribute instance-attribute
error_message: str | None = ...

Contains a generic description of the error condition. Returned in the <message> tag of the error XML response for a corresponding GetObject call. Cannot be used with a successful StatusCode header or when the transformed object is provided in body.

expiration class-attribute instance-attribute
expiration: str | None = ...

If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key-value pairs that provide the object expiration information. The value of the rule-id is URL-encoded.

expires class-attribute instance-attribute
expires: str | None = ...

The date and time at which the object is no longer cacheable.

last_modified class-attribute instance-attribute
last_modified: datetime | None = ...

The date and time that the object was last modified.

metadata class-attribute instance-attribute
metadata: dict[str, str] | None = ...

A map of metadata to store with the object in S3.

missing_meta class-attribute instance-attribute
missing_meta: int | None = ...

Set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

object_lock_legal_hold_status: str | None = ...

Indicates whether an object stored in Amazon S3 has an active legal hold.

object_lock_mode class-attribute instance-attribute
object_lock_mode: str | None = ...

Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3 Object Lock, see Object Lock.

object_lock_retain_until_date class-attribute instance-attribute
object_lock_retain_until_date: datetime | None = ...

The date and time when Object Lock is configured to expire.

parts_count class-attribute instance-attribute
parts_count: int | None = ...

The count of parts this object has.

replication_status class-attribute instance-attribute
replication_status: str | None = ...

Indicates if request involves bucket that is either a source or destination in a Replication rule. For more information about S3 Replication, see Replication.

request_charged class-attribute instance-attribute
request_charged: str | None = ...

If present, indicates that the requester was successfully charged for the request. For more information, see Using Requester Pays buckets for storage transfers and usage in the Amazon Simple Storage Service user guide.

Note

This functionality is not supported for directory buckets.

request_route class-attribute instance-attribute
request_route: str | None = ...

Route prefix to the HTTP URL generated.

request_token class-attribute instance-attribute
request_token: str | None = ...

A single use encrypted token that maps WriteGetObjectResponse to the end user GetObject request.

restore class-attribute instance-attribute
restore: str | None = ...

Provides information about object restoration operation and expiration time of the restored object copy.

server_side_encryption class-attribute instance-attribute
server_side_encryption: str | None = ...

The server-side encryption algorithm used when storing requested object in Amazon S3 or Amazon FSx.

Note

When accessing data stored in Amazon FSx file systems using S3 access points, the only valid server side encryption option is aws:fsx.

sse_customer_algorithm class-attribute instance-attribute
sse_customer_algorithm: str | None = ...

Encryption algorithm used if server-side encryption with a customer-provided encryption key was specified for object stored in Amazon S3.

sse_customer_key_md5 class-attribute instance-attribute
sse_customer_key_md5: str | None = ...

128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3. For more information, see Protecting data using server-side encryption with customer-provided encryption keys (SSE-C).

ssekms_key_id class-attribute instance-attribute
ssekms_key_id: str | None = ...

If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.

status_code class-attribute instance-attribute
status_code: int | None = ...

The integer status code for an HTTP response of a corresponding GetObject request. The following is a list of status codes.

  • 200 - OK

  • 206 - Partial Content

  • 304 - Not Modified

  • 400 - Bad Request

  • 401 - Unauthorized

  • 403 - Forbidden

  • 404 - Not Found

  • 405 - Method Not Allowed

  • 409 - Conflict

  • 411 - Length Required

  • 412 - Precondition Failed

  • 416 - Range Not Satisfiable

  • 500 - Internal Server Error

  • 503 - Service Unavailable

storage_class class-attribute instance-attribute
storage_class: str | None = ...

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

tag_count class-attribute instance-attribute
tag_count: int | None = ...

The number of tags, if any, on the object.

version_id class-attribute instance-attribute
version_id: str | None = ...

An ID used to reference a specific version of the object.

Output

WriteGetObjectResponseOutput dataclass

Bases: _SerdeShape

Dataclass for WriteGetObjectResponseOutput structure.

Attributes

response_metadata class-attribute instance-attribute
response_metadata: ResponseMetadata = ...

Metadata about the response that produced this output. Use this to recover the request identifiers a service's support team needs in order to investigate a call. Members of the metadata are individually optional.