tencent cloud

Feedback

Bucket Operations

Last updated: 2024-01-24 14:32:23

    Overview

    This document provides an overview of APIs and SDK code samples for basic bucket operations.
    API
    Operation
    Description
    Querying a bucket list
    Queries the list of all buckets under a specified account
    Creating a bucket
    Creates a bucket under a specified account
    Checking a bucket and its permissions
    Checks whether a bucket exists and whether you have permission to access it
    Deleting a bucket
    Deletes an empty bucket from a specified account

    SDK API References

    For parameters and method description of all APIs in the SDK, please see SDK API Reference.

    Querying a Bucket List

    Feature description

    This API (GET Service (List Buckets)) is used to query the list of all buckets under a specified account.

    Sample code

    Objective-C
    // Method for getting the list of all storage spaces under an account
    QCloudGetServiceRequest* request = [[QCloudGetServiceRequest alloc] init];
    [request setFinishBlock:^(QCloudListAllMyBucketsResult* result,
    NSError* error) {
    
    //Get the returned information from result
    NSArray<QCloudBucket*> *buckets = result.buckets;
    
    // Bucket owner
    QCloudOwner *owner = result.owner;
    }];
    [[QCloudCOSXMLService defaultCOSXML] GetService:request];
    Note:
    For the complete sample, go to GitHub.
    Swift
    // Method for getting the list of all storage spaces under an account
    let getServiceReq = QCloudGetServiceRequest.init();
    getServiceReq.setFinish{(result,error) in
    if let result = result {
    let buckets = result.buckets
    let owner = result.owner
    } else {
    print(error!);
    }
    }
    QCloudCOSXMLService.defaultCOSXML().getService(getServiceReq);
    Note:
    For the complete sample, go to GitHub.

    Creating a Bucket

    Feature description

    This API (PUT Bucket) is used to create a bucket.

    Sample code

    Objective-C
    // Create a bucket
    QCloudPutBucketRequest* request = [QCloudPutBucketRequest new];
    
    // Bucket name in the format of `BucketName-APPID`, which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
    request.bucket = @"examplebucket-1250000000";
    
    [request setFinishBlock:^(id outputObject, NSError* error) {
    // You can get the header information returned by the server from outputObject
    NSDictionary* info = (NSDictionary *) outputObject;
    }];
    [[QCloudCOSXMLService defaultCOSXML] PutBucket:request];
    Note:
    For the complete sample, go to GitHub.
    Swift
    // Create a bucket
    let putBucketReq = QCloudPutBucketRequest.init();
    
    // Bucket name in the format of BucketName-APPID, which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
    putBucketReq.bucket = "examplebucket-1250000000";
    putBucketReq.finishBlock = {(result,error) in
    // You can get the header information returned by the server from result
    if error != nil {
    print(error!);
    } else {
    print(result!);
    }
    }
    QCloudCOSXMLService.defaultCOSXML().putBucket(putBucketReq);
    Note:
    For the complete sample, go to GitHub.

    Checking a Bucket and Its Permissions

    Feature description

    This API is used to check whether a bucket exists and whether you have permission to access it.
    If the bucket exists and you have permission to read it, HTTP status code 200 will be returned.
    If you do not have permission to read the bucket, HTTP status code 403 will be returned.
    If the bucket does not exist, HTTP status code 404 will be returned.

    Sample code

    Objective-C
    QCloudHeadBucketRequest* request = [QCloudHeadBucketRequest new];
    
    // Bucket name in the format of BucketName-APPID, which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
    request.bucket = @"examplebucket-1250000000";
    
    [request setFinishBlock:^(id outputObject, NSError* error) {
    // You can get the header information returned by the server from outputObject
    NSDictionary * result = (NSDictionary *)outputObject;
    
    }];
    [[QCloudCOSXMLService defaultCOSXML] HeadBucket:request];
    Note:
    For the complete sample, go to GitHub.
    Swift
    let headBucketReq = QCloudHeadBucketRequest.init();
    
    // Bucket name in the format of BucketName-APPID, which can be viewed in the COS console at https://console.tencentcloud.com/cos5/bucket.
    headBucketReq.bucket = "examplebucket-1250000000";
    
    headBucketReq.finishBlock = {(result,error) in
    if let result = result {
    // result contains response headers
    } else {
    print(error!);
    }
    }
    QCloudCOSXMLService.defaultCOSXML().headBucket(headBucketReq);
    Note:
    For the complete sample, go to GitHub.

    Checking whether a bucket exists

    Feature description

    You can check whether a bucket exists by using the shortcut API provided by the SDK.

    Sample code

    Objective-C
    // Bucket name in the format of BucketName-APPID
    [[QCloudCOSXMLService defaultCOSXML] doesBucketExist: @"examplebucket-1250000000"];
    Note:
    For the complete sample, go to GitHub.
    Swift
    // Bucket name in the format of BucketName-APPID
    QCloudCOSXMLService.defaultCOSXML().doesBucketExist("examplebucket-1250000000");
    Note:
    For the complete sample, go to GitHub.

    Deleting a Bucket

    Feature description

    This API is used to delete a specified bucket.
    Note:
    Before deleting a bucket, please make sure that all the data and incomplete multipart uploads in the bucket have been deleted; otherwise, the bucket cannot be deleted.

    Sample code

    Objective-C
    QCloudDeleteBucketRequest* request = [[QCloudDeleteBucketRequest alloc ] init];
    
    // Bucket name in the format of BucketName-APPID
    request.bucket = @"examplebucket-1250000000";
    
    [request setFinishBlock:^(id outputObject,NSError*error) {
    // You can get the header information returned by the server from outputObject
    NSDictionary* info = (NSDictionary *) outputObject;
    }];
    [[QCloudCOSXMLService defaultCOSXML] DeleteBucket:request];
    Note:
    For the complete sample, go to GitHub.
    Swift
    let deleteBucketReq = QCloudDeleteBucketRequest.init();
    
    // Bucket name in the format of BucketName-APPID
    deleteBucketReq.bucket = "examplebucket-1250000000";
    
    deleteBucketReq.finishBlock = {(result,error) in
    if let result = result {
    // result contains response headers
    } else {
    print(error!);
    }
    }
    QCloudCOSXMLService.defaultCOSXML().deleteBucket(deleteBucketReq);
    Note:
    For the complete sample, go to GitHub.
    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