Copies a source object to a destination object. Optionally overrides metadata.
Arguments
destinationBucket
string
Required. Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.For information about how to URL encode object names to be path safe, see Encoding URI Path Parts .
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.
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.
authenticatedRead
bucketOwnerFullControl
bucketOwnerRead
private
projectPrivate
publicRead
ifGenerationMatch
string ( int64
format)
Makes the operation conditional on whether the destination 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 destination 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.
projection
enum
Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
full
noAcl
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
ConnectionError
HttpError
TimeoutError
TypeError
ValueError
Response
If successful, the response contains an instance of Object
.
Subworkflow snippet
Some fields might be optional or required. To identify required fields, refer to the API documentation .
YAML
- copy : call : googleapis.storage.v1.objects.copy args : destinationBucket : ... destinationObject : ... sourceBucket : ... sourceObject : ... destinationKmsKeyName : ... destinationPredefinedAcl : ... ifGenerationMatch : ... ifGenerationNotMatch : ... ifMetagenerationMatch : ... ifMetagenerationNotMatch : ... ifSourceGenerationMatch : ... ifSourceGenerationNotMatch : ... ifSourceMetagenerationMatch : ... ifSourceMetagenerationNotMatch : ... projection : ... 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 : copyResult
JSON
[ { "copy" : { "call" : "googleapis.storage.v1.objects.copy" , "args" : { "destinationBucket" : "..." , "destinationObject" : "..." , "sourceBucket" : "..." , "sourceObject" : "..." , "destinationKmsKeyName" : "..." , "destinationPredefinedAcl" : "..." , "ifGenerationMatch" : "..." , "ifGenerationNotMatch" : "..." , "ifMetagenerationMatch" : "..." , "ifMetagenerationNotMatch" : "..." , "ifSourceGenerationMatch" : "..." , "ifSourceGenerationNotMatch" : "..." , "ifSourceMetagenerationMatch" : "..." , "ifSourceMetagenerationNotMatch" : "..." , "projection" : "..." , "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" : "copyResult" } } ]

