private static void Main(string[] args)
var ak = Environment.GetEnvironmentVariable("TOS_ACCESS_KEY");
var sk = Environment.GetEnvironmentVariable("TOS_SECRET_KEY");
var endpoint = "https://tos-cn-beijing.volces.com";
var region = "cn-beijing";
var bucketName = "*** Provide your bucket name ***";
var dstBucketName = "*** Provide your dst bucket name ***";
var srcObjectKey = "srcObjectKey";
var dstObjectKey = "objectKey";
var client = TosClientBuilder.Builder().SetAk(ak).SetSk(sk).SetEndpoint(endpoint).SetRegion(region).Build();
var copyObjectInput = new CopyObjectInput()
var copyObjectOutput = client.CopyObject(copyObjectInput);
Console.WriteLine("CopyObject succeeded, request id {0}", copyObjectOutput.RequestID);
copyObjectInput = new CopyObjectInput()
ACL = ACLType.ACLPrivate,
StorageClass = StorageClassType.StorageClassIa,
copyObjectOutput = client.CopyObject(copyObjectInput);
Console.WriteLine("CopyObject succeeded, request id {0}", copyObjectOutput.RequestID);
catch (TosServerException ex)
Console.WriteLine("CopyObject failed, request id {0}", ex.RequestID);
Console.WriteLine("CopyObject failed, status code {0}", ex.StatusCode);
Console.WriteLine("CopyObject failed, response error code {0}", ex.Code);
Console.WriteLine("CopyObject failed, response error message {0}", ex.Message);
catch (TosClientException ex)
Console.WriteLine("CopyObject failed, error message {0}", ex.Message);
Console.WriteLine("CopyObject failed, {0}", ex.Message);