Method: googleapis.storage.v1.objects.rewrite

Rewrites a source object to a destination object. Optionally overrides metadata.

Arguments

Parameters
destinationBucket

string

Required. Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.

destinationObject

string

Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts .

sourceBucket

string

Required. Name of the bucket in which to find the source object.

sourceObject

string

Required. Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts .

destinationKmsKeyName

string

Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.

destinationPredefinedAcl

enum

Apply a predefined set of access controls to the destination object.

Enum type. Can be one of the following:
authenticatedRead
Object owner gets OWNER access, and allAuthenticatedUsers get READER access.
bucketOwnerFullControl
Object owner gets OWNER access, and project team owners get OWNER access.
bucketOwnerRead
Object owner gets OWNER access, and project team owners get READER access.
private
Object owner gets OWNER access.
projectPrivate
Object owner gets OWNER access, and project team members get access according to their roles.
publicRead
Object owner gets OWNER access, and allUsers get READER access.
ifGenerationMatch

string ( int64 format)

Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.

ifGenerationNotMatch

string ( int64 format)

Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.

ifMetagenerationMatch

string ( int64 format)

Makes the operation conditional on whether the destination object's current metageneration matches the given value.

ifMetagenerationNotMatch

string ( int64 format)

Makes the operation conditional on whether the destination object's current metageneration does not match the given value.

ifSourceGenerationMatch

string ( int64 format)

Makes the operation conditional on whether the source object's current generation matches the given value.

ifSourceGenerationNotMatch

string ( int64 format)

Makes the operation conditional on whether the source object's current generation does not match the given value.

ifSourceMetagenerationMatch

string ( int64 format)

Makes the operation conditional on whether the source object's current metageneration matches the given value.

ifSourceMetagenerationNotMatch

string ( int64 format)

Makes the operation conditional on whether the source object's current metageneration does not match the given value.

maxBytesRewrittenPerCall

string ( int64 format)

The maximum number of bytes that will be rewritten per rewrite request. Most callers shouldn't need to specify this parameter - it is primarily in place to support testing. If specified the value must be an integral multiple of 1 MiB (1048576). Also, this only applies to requests where the source and destination span locations and/or storage classes. Finally, this value must not change across rewrite calls else you'll get an error that the rewriteToken is invalid.

projection

enum

Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.

Enum type. Can be one of the following:
full
Include all properties.
noAcl
Omit the owner, acl property.
rewriteToken

string

Include this field (from the previous rewrite response) on each rewrite request after the first one, until the rewrite response 'done' flag is true. Calls that provide a rewriteToken can omit all other request fields, but if included those fields must match the values provided in the first rewrite request.

sourceGeneration

string ( int64 format)

If present, selects a specific revision of the source object (as opposed to the latest version, the default).

userProject

string

The project to be billed for this request. Required for Requester Pays buckets.

body

object ( Object )

Required.

Raised exceptions

Exceptions
ConnectionError
In case of a network problem (such as DNS failure or refused connection).
HttpError
If the response status is >= 400 (excluding 429 and 503).
TimeoutError
If a long-running operation takes longer to finish than the specified timeout limit.
TypeError
If an operation or function receives an argument of the wrong type.
ValueError
If an operation or function receives an argument of the right type but an inappropriate value. For example, a negative timeout.

Response

If successful, the response contains an instance of RewriteResponse .

Subworkflow snippet

Some fields might be optional or required. To identify required fields, refer to the API documentation .

YAML

 - 
  
 rewrite 
 : 
  
 call 
 : 
  
 googleapis.storage.v1.objects.rewrite 
  
 args 
 : 
  
 destinationBucket 
 : 
  
 ... 
  
 destinationObject 
 : 
  
 ... 
  
 sourceBucket 
 : 
  
 ... 
  
 sourceObject 
 : 
  
 ... 
  
 destinationKmsKeyName 
 : 
  
 ... 
  
 destinationPredefinedAcl 
 : 
  
 ... 
  
 ifGenerationMatch 
 : 
  
 ... 
  
 ifGenerationNotMatch 
 : 
  
 ... 
  
 ifMetagenerationMatch 
 : 
  
 ... 
  
 ifMetagenerationNotMatch 
 : 
  
 ... 
  
 ifSourceGenerationMatch 
 : 
  
 ... 
  
 ifSourceGenerationNotMatch 
 : 
  
 ... 
  
 ifSourceMetagenerationMatch 
 : 
  
 ... 
  
 ifSourceMetagenerationNotMatch 
 : 
  
 ... 
  
 maxBytesRewrittenPerCall 
 : 
  
 ... 
  
 projection 
 : 
  
 ... 
  
 rewriteToken 
 : 
  
 ... 
  
 sourceGeneration 
 : 
  
 ... 
  
 userProject 
 : 
  
 ... 
  
 body 
 : 
  
 acl 
 : 
  
 ... 
  
 bucket 
 : 
  
 ... 
  
 cacheControl 
 : 
  
 ... 
  
 componentCount 
 : 
  
 ... 
  
 contentDisposition 
 : 
  
 ... 
  
 contentEncoding 
 : 
  
 ... 
  
 contentLanguage 
 : 
  
 ... 
  
 contentType 
 : 
  
 ... 
  
 crc32c 
 : 
  
 ... 
  
 customTime 
 : 
  
 ... 
  
 customerEncryption 
 : 
  
 encryptionAlgorithm 
 : 
  
 ... 
  
 keySha256 
 : 
  
 ... 
  
 etag 
 : 
  
 ... 
  
 eventBasedHold 
 : 
  
 ... 
  
 generation 
 : 
  
 ... 
  
 id 
 : 
  
 ... 
  
 kind 
 : 
  
 ... 
  
 kmsKeyName 
 : 
  
 ... 
  
 md5Hash 
 : 
  
 ... 
  
 mediaLink 
 : 
  
 ... 
  
 metadata 
 : 
  
 ... 
  
 metageneration 
 : 
  
 ... 
  
 name 
 : 
  
 ... 
  
 owner 
 : 
  
 entity 
 : 
  
 ... 
  
 entityId 
 : 
  
 ... 
  
 retentionExpirationTime 
 : 
  
 ... 
  
 selfLink 
 : 
  
 ... 
  
 size 
 : 
  
 ... 
  
 storageClass 
 : 
  
 ... 
  
 temporaryHold 
 : 
  
 ... 
  
 timeCreated 
 : 
  
 ... 
  
 timeDeleted 
 : 
  
 ... 
  
 timeStorageClassUpdated 
 : 
  
 ... 
  
 updated 
 : 
  
 ... 
  
 result 
 : 
  
 rewriteResult 

JSON

 [ 
  
 { 
  
 "rewrite" 
 : 
  
 { 
  
 "call" 
 : 
  
 "googleapis.storage.v1.objects.rewrite" 
 , 
  
 "args" 
 : 
  
 { 
  
 "destinationBucket" 
 : 
  
 "..." 
 , 
  
 "destinationObject" 
 : 
  
 "..." 
 , 
  
 "sourceBucket" 
 : 
  
 "..." 
 , 
  
 "sourceObject" 
 : 
  
 "..." 
 , 
  
 "destinationKmsKeyName" 
 : 
  
 "..." 
 , 
  
 "destinationPredefinedAcl" 
 : 
  
 "..." 
 , 
  
 "ifGenerationMatch" 
 : 
  
 "..." 
 , 
  
 "ifGenerationNotMatch" 
 : 
  
 "..." 
 , 
  
 "ifMetagenerationMatch" 
 : 
  
 "..." 
 , 
  
 "ifMetagenerationNotMatch" 
 : 
  
 "..." 
 , 
  
 "ifSourceGenerationMatch" 
 : 
  
 "..." 
 , 
  
 "ifSourceGenerationNotMatch" 
 : 
  
 "..." 
 , 
  
 "ifSourceMetagenerationMatch" 
 : 
  
 "..." 
 , 
  
 "ifSourceMetagenerationNotMatch" 
 : 
  
 "..." 
 , 
  
 "maxBytesRewrittenPerCall" 
 : 
  
 "..." 
 , 
  
 "projection" 
 : 
  
 "..." 
 , 
  
 "rewriteToken" 
 : 
  
 "..." 
 , 
  
 "sourceGeneration" 
 : 
  
 "..." 
 , 
  
 "userProject" 
 : 
  
 "..." 
 , 
  
 "body" 
 : 
  
 { 
  
 "acl" 
 : 
  
 "..." 
 , 
  
 "bucket" 
 : 
  
 "..." 
 , 
  
 "cacheControl" 
 : 
  
 "..." 
 , 
  
 "componentCount" 
 : 
  
 "..." 
 , 
  
 "contentDisposition" 
 : 
  
 "..." 
 , 
  
 "contentEncoding" 
 : 
  
 "..." 
 , 
  
 "contentLanguage" 
 : 
  
 "..." 
 , 
  
 "contentType" 
 : 
  
 "..." 
 , 
  
 "crc32c" 
 : 
  
 "..." 
 , 
  
 "customTime" 
 : 
  
 "..." 
 , 
  
 "customerEncryption" 
 : 
  
 { 
  
 "encryptionAlgorithm" 
 : 
  
 "..." 
 , 
  
 "keySha256" 
 : 
  
 "..." 
  
 }, 
  
 "etag" 
 : 
  
 "..." 
 , 
  
 "eventBasedHold" 
 : 
  
 "..." 
 , 
  
 "generation" 
 : 
  
 "..." 
 , 
  
 "id" 
 : 
  
 "..." 
 , 
  
 "kind" 
 : 
  
 "..." 
 , 
  
 "kmsKeyName" 
 : 
  
 "..." 
 , 
  
 "md5Hash" 
 : 
  
 "..." 
 , 
  
 "mediaLink" 
 : 
  
 "..." 
 , 
  
 "metadata" 
 : 
  
 "..." 
 , 
  
 "metageneration" 
 : 
  
 "..." 
 , 
  
 "name" 
 : 
  
 "..." 
 , 
  
 "owner" 
 : 
  
 { 
  
 "entity" 
 : 
  
 "..." 
 , 
  
 "entityId" 
 : 
  
 "..." 
  
 }, 
  
 "retentionExpirationTime" 
 : 
  
 "..." 
 , 
  
 "selfLink" 
 : 
  
 "..." 
 , 
  
 "size" 
 : 
  
 "..." 
 , 
  
 "storageClass" 
 : 
  
 "..." 
 , 
  
 "temporaryHold" 
 : 
  
 "..." 
 , 
  
 "timeCreated" 
 : 
  
 "..." 
 , 
  
 "timeDeleted" 
 : 
  
 "..." 
 , 
  
 "timeStorageClassUpdated" 
 : 
  
 "..." 
 , 
  
 "updated" 
 : 
  
 "..." 
  
 } 
  
 }, 
  
 "result" 
 : 
  
 "rewriteResult" 
  
 } 
  
 } 
 ] 
Design a Mobile Site
View Site in Mobile | Classic
Share by: