华为云计算 云知识 批量添加指定集群的资源标签BatchCreateClusterTags
批量添加指定集群的资源标签BatchCreateClusterTags

 

功能介绍

该API用于批量添加指定集群的资源标签。

  • 每个集群支持最多20个资源标签。

  • 此接口为幂等接口:创建时,如果创建的标签已经存在(key/value均相同视为重复),默认处理成功;key相同,value不同时会覆盖原有标签。

调用方法

请参见如何调用API

URI

POST /api/v3/projects/{project_id}/clusters/{cluster_id}/tags/create

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见如何获取接口URI中参数

cluster_id

String

集群ID,获取方式请参见如何获取接口URI中参数

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

Content-Type

String

消息体的类型(格式)

X-Auth-Token

String

调用接口的认证方式分为Token和AK/SK两种,如果您使用的Token方式,此参数为必填,请填写Token的值,获取方式请参见获取token

表3 请求Body参数

参数

是否必选

参数类型

描述

tags

Array of ResourceTag objects

待创建的集群资源标签列表。单集群资源标签总数上限为20。

表4 ResourceTag

参数

是否必选

参数类型

描述

key

String

Key值。

  • 不能为空,最多支持128个字符

  • 可用UTF-8格式表示的汉字、字母、数字和空格

  • 支持部分特殊字符:_.:/=+-@

  • 不能以"_sys_"开头

value

String

Value值。

  • 可以为空但不能缺省,最多支持255个字符

  • 可用UTF-8格式表示的汉字、字母、数字和空格

  • 支持部分特殊字符:_.:/=+-@

响应参数

请求示例

批量添加指定集群的资源标签

POST /api/v3/projects/{project_id}/clusters/{cluster_id}/tags/create

{
  "tags" : [ {
    "key" : "key1",
    "value" : "value1"
  }, {
    "key" : "key2",
    "value" : "value3"
  } ]
}

响应示例

SDK代码示例

SDK代码示例如下。

  • Java
  • Python
  • Go
  • 更多

批量添加指定集群的资源标签

package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cce.v3.region.CceRegion;
import com.huaweicloud.sdk.cce.v3.*;
import com.huaweicloud.sdk.cce.v3.model.*;

import java.util.List;
import java.util.ArrayList;

public class BatchCreateClusterTagsSolution {

    public static void main(String[] args) {
        String ak = "<YOUR AK>";
        String sk = "<YOUR SK>";
        String projectId = "<project_id>";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        CceClient client = CceClient.newBuilder()
                .withCredential(auth)
                .withRegion(CceRegion.valueOf("cn-north-4"))
                .build();
        BatchCreateClusterTagsRequest request = new BatchCreateClusterTagsRequest();
        request.withClusterId("<cluster_id>");
        BatchCreateClusterTagsRequestBody body = new BatchCreateClusterTagsRequestBody();
        List<ResourceTag> listbodyTags = new ArrayList<>();
        listbodyTags.add(
            new ResourceTag()
                .withKey("key1")
                .withValue("value1")
        );
        listbodyTags.add(
            new ResourceTag()
                .withKey("key2")
                .withValue("value3")
        );
        body.withTags(listbodyTags);
        request.withBody(body);
        try {
            BatchCreateClusterTagsResponse response = client.batchCreateClusterTags(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

批量添加指定集群的资源标签

# coding: utf-8

from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcce.v3.region.cce_region import CceRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcce.v3 import *

if __name__ == "__main__":
    ak = "<YOUR AK>"
    sk = "<YOUR SK>"
    projectId = "<project_id>"

    credentials = BasicCredentials(ak, sk, projectId) \

    client = CceClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CceRegion.value_of("cn-north-4")) \
        .build()

    try:
        request = BatchCreateClusterTagsRequest()
        request.cluster_id = "<cluster_id>"
        listTagsbody = [
            ResourceTag(
                key="key1",
                value="value1"
            ),
            ResourceTag(
                key="key2",
                value="value3"
            )
        ]
        request.body = BatchCreateClusterTagsRequestBody(
            tags=listTagsbody
        )
        response = client.batch_create_cluster_tags(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

批量添加指定集群的资源标签

package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    cce "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cce/v3/region"
)

func main() {
    ak := "<YOUR AK>"
    sk := "<YOUR SK>"
    projectId := "<project_id>"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := cce.NewCceClient(
        cce.CceClientBuilder().
            WithRegion(region.ValueOf("cn-north-4")).
            WithCredential(auth).
            Build())

    request := &model.BatchCreateClusterTagsRequest{}
	request.ClusterId = "<cluster_id>"
	keyTags:= "key1"
	valueTags:= "value1"
	keyTags1:= "key2"
	valueTags1:= "value3"
	var listTagsbody = []model.ResourceTag{
        {
            Key: &keyTags,
            Value: &valueTags,
        },
        {
            Key: &keyTags1,
            Value: &valueTags1,
        },
    }
	request.Body = &model.BatchCreateClusterTagsRequestBody{
		Tags: listTagsbody,
	}
	response, err := client.BatchCreateClusterTags(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

204

No Content

错误码

请参见错误码

 

上一篇:查询资源标签ListResourceTags 下一篇:交通智能体TrafficGo是什么

游戏批量开服数据库解决方案

游戏批量开服数据库解决方案