@@ -205,6 +205,14 @@ type UploadObjectInput struct {
205205 // [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
206206 ChecksumSHA256 * string
207207
208+ // This header can be used as a data integrity check to verify that the data
209+ // received is the same data that was originally sent. This header specifies the
210+ // Base64 encoded, 512-bit SHA512 digest of the object. For more information, see [Checking object integrity]
211+ // in the Amazon S3 User Guide.
212+ //
213+ // [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
214+ ChecksumSHA512 * string
215+
208216 // Size of the body in bytes. This parameter is useful when the size of the body
209217 // cannot be determined automatically. For more information, see [https://www.rfc-editor.org/rfc/rfc9110.html#name-content-length].
210218 //
@@ -475,6 +483,7 @@ func (i UploadObjectInput) mapSingleUploadInput(body io.Reader, checksumAlgorith
475483 ChecksumCRC64NVME : i .ChecksumCRC64NVME ,
476484 ChecksumSHA1 : i .ChecksumSHA1 ,
477485 ChecksumSHA256 : i .ChecksumSHA256 ,
486+ ChecksumSHA512 : i .ChecksumSHA512 ,
478487 ContentDisposition : i .ContentDisposition ,
479488 ContentEncoding : i .ContentEncoding ,
480489 ContentLanguage : i .ContentLanguage ,
@@ -561,6 +570,7 @@ func (i UploadObjectInput) mapCompleteMultipartUploadInput(uploadID *string, com
561570 ChecksumCRC64NVME : i .ChecksumCRC64NVME ,
562571 ChecksumSHA1 : i .ChecksumSHA1 ,
563572 ChecksumSHA256 : i .ChecksumSHA256 ,
573+ ChecksumSHA512 : i .ChecksumSHA512 ,
564574 ExpectedBucketOwner : i .ExpectedBucketOwner ,
565575 IfMatch : i .IfMatch ,
566576 IfNoneMatch : i .IfNoneMatch ,
@@ -640,6 +650,9 @@ type UploadObjectOutput struct {
640650 // The base64-encoded, 256-bit SHA-256 digest of the object.
641651 ChecksumSHA256 * string
642652
653+ // The base64-encoded, 512-bit SHA-512 digest of the object.
654+ ChecksumSHA512 * string
655+
643656 // This header specifies the checksum type of the object, which determines how
644657 // part-level checksums are combined to create an object-level checksum for
645658 // multipart objects. For PutObject uploads, the checksum type is always
@@ -735,6 +748,7 @@ func (o *UploadObjectOutput) mapFromPutObjectOutput(out *s3.PutObjectOutput, buc
735748 o .ChecksumCRC64NVME = out .ChecksumCRC64NVME
736749 o .ChecksumSHA1 = out .ChecksumSHA1
737750 o .ChecksumSHA256 = out .ChecksumSHA256
751+ o .ChecksumSHA512 = out .ChecksumSHA512
738752 o .ChecksumType = types .ChecksumType (out .ChecksumType )
739753 o .ContentLength = aws .Int64 (contentLength )
740754 o .ETag = out .ETag
@@ -761,6 +775,7 @@ func (o *UploadObjectOutput) mapFromCompleteMultipartUploadOutput(out *s3.Comple
761775 o .ChecksumCRC64NVME = out .ChecksumCRC64NVME
762776 o .ChecksumSHA1 = out .ChecksumSHA1
763777 o .ChecksumSHA256 = out .ChecksumSHA256
778+ o .ChecksumSHA512 = out .ChecksumSHA512
764779 o .ChecksumType = types .ChecksumType (out .ChecksumType )
765780 o .ContentLength = aws .Int64 (contentLength )
766781 o .ETag = out .ETag
0 commit comments