Copy Object
const url = 'https://example.com/storage/v1/workspaces/example/engines/example/buckets/example/objects:copy';const options = { method: 'POST', headers: {'Content-Type': 'application/json'}, body: '{"workspace":"example","engine":"example","bucket":"example","source_object_key":"example","dest_bucket":"example","dest_object_key":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/storage/v1/workspaces/example/engines/example/buckets/example/objects:copy \ --header 'Content-Type: application/json' \ --data '{ "workspace": "example", "engine": "example", "bucket": "example", "source_object_key": "example", "dest_bucket": "example", "dest_object_key": "example" }'Copies an object within the same workspace (server-side copy on the storage engine). Source and destination buckets must belong to the same workspace.
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The workspace (both source and destination buckets must belong to this workspace)
The cloud provider: qibdo, aws, gcp, or azure
Source bucket (bound from the URL path)
Request Body required
Section titled “Request Body required ”CopyObjectRequest
Request message for CopyObject. Carries the source (bucket, key) and the destination (bucket, key); both must be in the same workspace.
object
The workspace (both source and destination buckets must belong to this workspace)
The cloud provider: qibdo, aws, gcp, or azure
Source bucket (bound from the URL path)
Source object key
Destination bucket
Destination object key
Example generated
{ "workspace": "example", "engine": "example", "bucket": "example", "source_object_key": "example", "dest_bucket": "example", "dest_object_key": "example"}Responses
Section titled “ Responses ”OK
StorageOperation tracks the result of a storage command (bucket or object operation).
object
Unique operation identifier
The ID of the affected resource (bucket ID; null for object-only ops)
The type of resource (“Bucket” or “Object”)
The operation type (CREATE, UPDATE, DELETE, COPY)
The operation status (PENDING, RUNNING, DONE, ERROR)
When the operation was created
When execution started
When execution completed
Progress percentage (0–100)
Example generated
{}default
Section titled “default ”Default error response
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.
object
The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].
A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.
A list of messages that carry the error details. There is a common set of message types for APIs to use.
Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.
object
The type of the serialized message.
Example generated
{ "code": 1, "message": "example", "details": [ { "@type": "example" } ]}