tencent cloud

Feedback

Versioning

Last updated: 2022-05-19 14:52:59

    Overview

    This document provides an overview of APIs and SDK code samples for bucket versioning.

    API Operation Description
    PUT Bucket versioning Setting versioning Sets versioning for a bucket
    GET Bucket versioning Querying versioning Queries the versioning information of a bucket

    Setting Versioning

    Feature description

    This API (PUT Bucket versioning) is used to set the versioning configuration for a bucket.

    Method prototype

    func (s *BucketService) PutVersioning(ctx context.Context, opt *BucketPutVersionOptions) (*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, see https://www.tencentcloud.com/document/product/436/6224.
       u, _ := url.Parse("https://examplebucket-12500000000.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"),
               // 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"),
           },
       })
       opt := &cos.BucketPutVersionOptions{
           // `Enabled` or `Suspended`; once enabled, versioning can only be paused but not deleted.
           Status: "Enabled",
       }
       _, err := client.Bucket.PutVersioning(context.Background(), opt)
       if err != nil {
           panic(err)
       }
    }
    

    Parameter description

    type BucketPutVersionOptions struct {
    Status  string
    }
    
    Parameter Description Type
    BucketPutVersionOptions Versioning policies Struct
    Status Indicates whether versioning is enabled. Enumerated values: Suspended (versioning is paused), Enabled (versioning is enabled) String

    Querying Versioning

    Feature description

    This API (GET Bucket versioning) is used to query the versioning configuration of a bucket.

    Method prototype

    func (s *BucketService) GetVersioning(ctx context.Context) (*BucketGetVersionResult, *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, see https://www.tencentcloud.com/document/product/436/6224.
       u, _ := url.Parse("https://examplebucket-12500000000.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"),
               // 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"),
           },
       })
       _, _, err := client.Bucket.GetVersioning(context.Background())
       if err != nil {
           panic(err)
       }
    }
    

    Response description

    type BucketGetVersionResult struct {
    Status  string
    }
    
    Parameter Description Type
    BucketGetVersionResult Versioning policies Struct
    Status Indicates whether versioning is enabled. Enumerated values: Suspended (versioning is paused), Enabled (versioning is enabled) String
    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