tencent cloud

Feedback

Restoring Archived Objects

Last updated: 2024-02-02 15:51:37

    Overview

    This document provides an overview of APIs and SDK code samples for restoring an archived object.
    API
    Operation
    Description
    Restoring an archived object
    Restores an archived object for access.

    Restoring an Archived Object

    Feature description

    This API (POST Object restore) is used to restore an archived object for access.

    Method prototype

    func (s *ObjectService) PostRestore(ctx context.Context, key string, opt *ObjectRestoreOptions) (*Response, error)

    Sample request

    package main
    
    import (
    "context"
    "github.com/tencentyun/cos-go-sdk-v5"
    "net/http"
    "net/url"
    "os"
    )
    
    func main(){
    // Bucket name in the format of `BucketName-APPID` (`APPID` is required), which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
    // Replace it with your region, which can be viewed in the COS console at https://console.tencentcloud.com/. For more information about regions, visit https://www.tencentcloud.com/document/product/436/6224.
    u, _ := url.Parse("https://examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com")
    b := &cos.BaseURL{BucketURL: u}
    client := cos.NewClient(b, &http.Client{
    Transport: &cos.AuthorizationTransport{
    // Get the key from environment variables
    // Environment variable `SECRETID` refers to the user's `SecretId`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
    SecretID: os.Getenv("SECRETID"), // User `SecretId`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
    // Environment variable `SECRETKEY` refers to the user's `SecretKey`, which can be viewed in the CAM console at https://console.tencentcloud.com/cam/capi.
    SecretKey: os.Getenv("SECRETKEY"), // User `SecretKey`. We recommend you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.
    },
    })
    key := "example_restore"
    f, err := os.Open("/test")
    if err != nil{
    panic(err)
    }
    opt := &cos.ObjectPutOptions{
    ObjectPutHeaderOptions: &cos.ObjectPutHeaderOptions{
    ContentType: "text/html",
    XCosStorageClass: "ARCHIVE", //ARCHIVE storage class
    },
    ACLHeaderOptions: &cos.ACLHeaderOptions{
    // Considering the ACL limit, we recommend you not set an object ACL when uploading an object unless required. The object will then inherit the bucket ACL by default.
    XCosACL: "private",
    },
    }
    // Upload an object directly to ARCHIVE storage class
    _, err = client.Object.Put(context.Background(), key, f, opt)
    if err != nil{
    panic(err)
    }
    
    opts := &cos.ObjectRestoreOptions{
    Days: 2,
    Tier: &cos.CASJobParameters{
    // Standard, Expedited, and Bulk
    Tier: "Expedited",
    },
    }
    // Restore an archived object.
    _, err = client.Object.PostRestore(context.Background(), key, opts)
    if err != nil{
    panic(err)
    }
    }

    Field description

    type ObjectRestoreOptions struct {
    Days int
    Tier *CASJobParameters
    }
    type CASJobParameters struct {
    Tier string
    }
    Parameter
    Description
    Type
    Required
    key
    Object key, unique identifier of an object in a bucket. For example, if the object endpoint is examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com/doc/pic.jpg, its object key is doc/pic.jpg
    String
    Yes
    ObjectRestoreOptions
    Describes rules for retrieved temporary files
    Struct
    Yes
    Days
    Specifies the number of days before a temporary object expires
    Int
    Yes
    CASJobParameters
    Specifies the restoration configuration
    Struct
    No
    Tier
    Object restoration mode.
    For ARCHIVE, valid values are Expedited, Standard, and Bulk.
    For DEEP ARCHIVE, valid values are Standard and Bulk.
    String
    No
    
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support