{
  "name": "cetcd",
  "display_name": "云原生 etcd",
  "description": "介绍如何使用API对etcd服务进行操作，包括创建etcd实例，创建备份以及恢复备份等。",
  "domain": "other",
  "api_version": "2022-03-25",
  "endpoint": "cetcd.tencentcloudapi.com",
  "actions": [
    {
      "name": "CreateEtcdInstance",
      "description": "创建etcd实例",
      "status": "online",
      "parameters": [
        {
          "name": "Name",
          "type": "string",
          "required": true,
          "description": "etcd实例名称",
          "example": "etcd-cluster-1"
        },
        {
          "name": "VpcId",
          "type": "string",
          "required": true,
          "description": "etcd所属vpc",
          "example": "vpc-abcd1234"
        },
        {
          "name": "ServiceSubnetId",
          "type": "string",
          "required": true,
          "description": "etcd对外提供访问ip地址所在子网",
          "example": "subnet-abcd1234"
        },
        {
          "name": "SubnetIds",
          "type": "array",
          "required": true,
          "description": "etcd部署子网",
          "example": "[\"subnet-abcd1234\"]",
          "item_type": "string"
        },
        {
          "name": "EtcdVersion",
          "type": "string",
          "required": true,
          "description": "etcd版本",
          "example": "v3.4.9"
        },
        {
          "name": "Size",
          "type": "integer",
          "required": true,
          "description": "etcd节点个数，可选范围: 1, 3, 5, 7, 9",
          "example": "3"
        },
        {
          "name": "Description",
          "type": "string",
          "required": false,
          "description": "etcd集群描述信息",
          "example": "examplecluster"
        },
        {
          "name": "AdvancedSettings",
          "type": "object",
          "required": false,
          "description": "高级设置",
          "example": "无",
          "children": [
            {
              "name": "SecuritySettings",
              "type": "object",
              "required": false,
              "description": "安全相关设置",
              "example": "x",
              "children": [
                {
                  "name": "Https",
                  "type": "boolean",
                  "required": false,
                  "description": "是否启用https 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "true"
                },
                {
                  "name": "ClientCertAuth",
                  "type": "boolean",
                  "required": false,
                  "description": "启用客户端证书认证 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "true"
                }
              ]
            },
            {
              "name": "AutoCompactionSettings",
              "type": "object",
              "required": false,
              "description": "自动压缩设置",
              "example": "x",
              "children": [
                {
                  "name": "AutoCompactionMode",
                  "type": "string",
                  "required": true,
                  "description": "自动压缩模式 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "periodic"
                },
                {
                  "name": "AutoCompactionRetention",
                  "type": "string",
                  "required": true,
                  "description": "自动压缩保留时间/revison数 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "5m"
                }
              ]
            },
            {
              "name": "MonitorSettings",
              "type": "object",
              "required": false,
              "description": "监控设置",
              "example": "x",
              "children": [
                {
                  "name": "PrometheusCreationParam",
                  "type": "object",
                  "required": false,
                  "description": "Prometheus创建参数",
                  "example": "无",
                  "children": [
                    {
                      "name": "SubnetId",
                      "type": "string",
                      "required": true,
                      "description": "子网ID",
                      "example": "subnet-xxxx"
                    },
                    {
                      "name": "DataRetention",
                      "type": "integer",
                      "required": true,
                      "description": "保存时长，只支持天单位 12d = 12天",
                      "example": "10"
                    },
                    {
                      "name": "GrafanaUserName",
                      "type": "string",
                      "required": true,
                      "description": "grafana用户名",
                      "example": "admin"
                    },
                    {
                      "name": "GrafanaPassword",
                      "type": "string",
                      "required": true,
                      "description": "grafana密码",
                      "example": "admin"
                    }
                  ]
                },
                {
                  "name": "ExistedPrometheusInstanceId",
                  "type": "string",
                  "required": false,
                  "description": "Prometheus Id",
                  "example": "prom-kkfzhlcn"
                }
              ]
            },
            {
              "name": "BackupSettings",
              "type": "object",
              "required": false,
              "description": "备份相关设置",
              "example": "x",
              "children": [
                {
                  "name": "BackupInterval",
                  "type": "integer",
                  "required": true,
                  "description": "备份间隔(s) 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "1"
                },
                {
                  "name": "MaxBackupCount",
                  "type": "integer",
                  "required": true,
                  "description": "最大备份个数 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "12"
                },
                {
                  "name": "User",
                  "type": "string",
                  "required": false,
                  "description": "用户名 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "user"
                },
                {
                  "name": "Password",
                  "type": "string",
                  "required": false,
                  "description": "密码 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "password"
                },
                {
                  "name": "CosBucketName",
                  "type": "string",
                  "required": false,
                  "description": "COS桶名称 注意：此字段可能返回 null，表示取不到有效值。",
                  "example": "tencentcloud-tke-etcd-backups-ap-guangzhou-1234567"
                }
              ]
            },
            {
              "name": "CustomDomains",
              "type": "string",
              "required": false,
              "description": "自定义域名",
              "example": "*.abc.com"
            },
            {
              "name": "CustomIPs",
              "type": "string",
              "required": false,
              "description": "自定义ip",
              "example": "127.0.0.1"
            }
          ]
        },
        {
          "name": "ChargeType",
          "type": "string",
          "required": false,
          "description": "付费类型： PREPAID 预付费 POSTPAID_BY_HOUR 后付费按小时付费",
          "example": "PREPAID"
        },
        {
          "name": "ChargePrepaid",
          "type": "object",
          "required": false,
          "description": "预付费相关配置",
          "example": "无",
          "children": [
            {
              "name": "Period",
              "type": "integer",
              "required": true,
              "description": "预付费购买周期，单位：月",
              "example": "1"
            },
            {
              "name": "RenewFlag",
              "type": "string",
              "required": true,
              "description": "预付费自动续费设置： NOTIFY_AND_MANUAL_RENEW：表示默认状态(用户未设置，即初始状态)， NOTIFY_AND_AUTO_RENEW：表示自动续费，DISABLE_NOTIFY_AND_MANUAL_RENEW：表示明确不自动续费(用户设置)",
              "example": "NOTIFY_AND_AUTO_RENEW"
            }
          ]
        },
        {
          "name": "DiskSize",
          "type": "integer",
          "required": false,
          "description": "存储大小GB",
          "example": "50"
        },
        {
          "name": "DeletionProtection",
          "type": "boolean",
          "required": false,
          "description": "删除保护，true 删除保护开启；false删除保护关闭",
          "example": "true"
        }
      ],
      "required": [
        "Name",
        "VpcId",
        "ServiceSubnetId",
        "SubnetIds",
        "EtcdVersion",
        "Size"
      ]
    },
    {
      "name": "CreateEtcdSnapshot",
      "description": "创建etcd快照",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例id",
          "example": "etcd-abcd1345"
        },
        {
          "name": "SnapshotName",
          "type": "string",
          "required": true,
          "description": "etcd快照名称",
          "example": "test"
        },
        {
          "name": "User",
          "type": "string",
          "required": false,
          "description": "备份用户名",
          "example": "test"
        },
        {
          "name": "Password",
          "type": "string",
          "required": false,
          "description": "备份密码",
          "example": "123"
        }
      ],
      "required": [
        "InstanceId",
        "SnapshotName"
      ]
    },
    {
      "name": "CreateEtcdSnapshotPolicy",
      "description": "创建etcd快照策略",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例Id",
          "example": "etcd-abcd1234"
        },
        {
          "name": "SnapshotPolicyName",
          "type": "string",
          "required": true,
          "description": "快照策略名",
          "example": "test"
        },
        {
          "name": "BackupSettings",
          "type": "object",
          "required": false,
          "description": "备份参数设置",
          "example": "无",
          "children": [
            {
              "name": "BackupInterval",
              "type": "integer",
              "required": true,
              "description": "备份间隔(s) 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "1"
            },
            {
              "name": "MaxBackupCount",
              "type": "integer",
              "required": true,
              "description": "最大备份个数 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "12"
            },
            {
              "name": "User",
              "type": "string",
              "required": false,
              "description": "用户名 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "user"
            },
            {
              "name": "Password",
              "type": "string",
              "required": false,
              "description": "密码 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "password"
            },
            {
              "name": "CosBucketName",
              "type": "string",
              "required": false,
              "description": "COS桶名称 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "tencentcloud-tke-etcd-backups-ap-guangzhou-1234567"
            }
          ]
        }
      ],
      "required": [
        "InstanceId",
        "SnapshotPolicyName"
      ]
    },
    {
      "name": "DescribeEtcdAvailableVersions",
      "description": "查看etcd可用版本",
      "status": "online",
      "parameters": [],
      "required": []
    },
    {
      "name": "DescribeEtcdCreatingProgress",
      "description": "查看etcd集群创建进度",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "实例id",
          "example": "etcd-abcd1234"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "DescribeEtcdCredentials",
      "description": "查询etcd访问凭证",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例id",
          "example": "etcd-abcd1234"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "DescribeEtcdInstances",
      "description": "查询etcd实例列表",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceIds",
          "type": "array",
          "required": false,
          "description": "按照一个或者多个实例ID查询。实例ID形如：etcd-xxxxxxxx。参数不支持同时指定InstanceIds和Filters",
          "example": "[\"etcd-abcd1234\"]",
          "item_type": "string"
        },
        {
          "name": "Filters",
          "type": "array",
          "required": false,
          "description": "支持按照vpc-id和instance-id过滤。参数不支持同时指定InstanceIds和Filters",
          "example": "无",
          "item_type": "object",
          "children": [
            {
              "name": "Name",
              "type": "string",
              "required": true,
              "description": "属性名称, 若存在多个Filter时，Filter间的关系为逻辑与（AND）关系。",
              "example": "instance-id"
            },
            {
              "name": "Values",
              "type": "array",
              "required": true,
              "description": "属性值, 若同一个Filter存在多个Values，同一Filter下Values间的关系为逻辑或（OR）关系。",
              "example": "[\"abc\"]",
              "item_type": "string"
            }
          ]
        },
        {
          "name": "Offset",
          "type": "integer",
          "required": false,
          "description": "偏移量，默认为0",
          "example": "0"
        },
        {
          "name": "Limit",
          "type": "integer",
          "required": false,
          "description": "返回数量，最大值为50",
          "example": "0"
        }
      ],
      "required": []
    },
    {
      "name": "DescribeEtcdQuota",
      "description": "查看etcd集群配额",
      "status": "online",
      "parameters": [],
      "required": []
    },
    {
      "name": "DescribeEtcdRegions",
      "description": "查看etcd支持地域",
      "status": "online",
      "parameters": [],
      "required": []
    },
    {
      "name": "DescribeEtcdSnapshotPolicies",
      "description": "查看etcd快照策略",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例Id",
          "example": "etcd-abcd1234"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "DescribeEtcdSnapshots",
      "description": "查看etcd快照列表",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例Id",
          "example": "etcd-abcd1234"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "DescribeEtcdTasks",
      "description": "查看etcd相关tasks",
      "status": "online",
      "parameters": [
        {
          "name": "TaskID",
          "type": "string",
          "required": false,
          "description": "任务ID",
          "example": "xxx-xxx"
        },
        {
          "name": "Filters",
          "type": "array",
          "required": false,
          "description": "taskType： 按照任务类型过滤，当前支持enable_internet，disable_internet, restore_remote_snapshot resourceId： 按照资源ID过滤 lifeState： 按照任务状态过滤，当前支持process， done",
          "example": "无",
          "item_type": "object",
          "children": [
            {
              "name": "Name",
              "type": "string",
              "required": true,
              "description": "属性名称, 若存在多个Filter时，Filter间的关系为逻辑与（AND）关系。",
              "example": "instance-id"
            },
            {
              "name": "Values",
              "type": "array",
              "required": true,
              "description": "属性值, 若同一个Filter存在多个Values，同一Filter下Values间的关系为逻辑或（OR）关系。",
              "example": "[\"abc\"]",
              "item_type": "string"
            }
          ]
        }
      ],
      "required": []
    },
    {
      "name": "DescribeRPCMethodList",
      "description": "获取etcd集群的gRPC方法列表",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例ID",
          "example": "etcd-ctq51lvf"
        },
        {
          "name": "PodName",
          "type": "string",
          "required": true,
          "description": "etcd集群pod名称",
          "example": "etcd-ctq51lvf-etcd-0"
        },
        {
          "name": "Offset",
          "type": "integer",
          "required": false,
          "description": "偏移量",
          "example": "0"
        },
        {
          "name": "Limit",
          "type": "integer",
          "required": false,
          "description": "最大长度",
          "example": "100"
        }
      ],
      "required": [
        "InstanceId",
        "PodName"
      ]
    },
    {
      "name": "DisableEtcdInstanceDeletionProtection",
      "description": "关闭etcd实例删除保护",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例ID",
          "example": "etcd-xxxxxxxx"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "EnableEtcdInstanceDeletionProtection",
      "description": "启用etcd实例删除保护",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例ID",
          "example": "etcd-xxxxxxxx"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "ModifyEtcdAttribute",
      "description": "修改etcd实例属性",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "实例id",
          "example": "etcd-1234abcd"
        },
        {
          "name": "Name",
          "type": "string",
          "required": false,
          "description": "实例名",
          "example": "test"
        },
        {
          "name": "Description",
          "type": "string",
          "required": false,
          "description": "实例描述",
          "example": "example"
        },
        {
          "name": "Password",
          "type": "string",
          "required": false,
          "description": "root账号密码",
          "example": "123"
        },
        {
          "name": "EnableAuth",
          "type": "boolean",
          "required": false,
          "description": "同步auth状态",
          "example": "false"
        },
        {
          "name": "EnableDeleteCos",
          "type": "boolean",
          "required": false,
          "description": "删除集群关联的cos数据",
          "example": "false"
        },
        {
          "name": "SubnetIds",
          "type": "array",
          "required": false,
          "description": "子网id，数组",
          "example": "[\"subnet-roxjj71s\"]",
          "item_type": "string"
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "ModifyEtcdConfiguration",
      "description": "修改etcd实例配置",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "实例id",
          "example": "etcd-abcd1234"
        },
        {
          "name": "AutoCompactionSettings",
          "type": "object",
          "required": false,
          "description": "自动压缩设置",
          "example": "无",
          "children": [
            {
              "name": "AutoCompactionMode",
              "type": "string",
              "required": true,
              "description": "自动压缩模式 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "periodic"
            },
            {
              "name": "AutoCompactionRetention",
              "type": "string",
              "required": true,
              "description": "自动压缩保留时间/revison数 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "5m"
            }
          ]
        },
        {
          "name": "MonitorSettings",
          "type": "object",
          "required": false,
          "description": "监控设置",
          "example": "无",
          "children": [
            {
              "name": "PrometheusCreationParam",
              "type": "object",
              "required": false,
              "description": "Prometheus创建参数",
              "example": "无",
              "children": [
                {
                  "name": "SubnetId",
                  "type": "string",
                  "required": true,
                  "description": "子网ID",
                  "example": "subnet-xxxx"
                },
                {
                  "name": "DataRetention",
                  "type": "integer",
                  "required": true,
                  "description": "保存时长，只支持天单位 12d = 12天",
                  "example": "10"
                },
                {
                  "name": "GrafanaUserName",
                  "type": "string",
                  "required": true,
                  "description": "grafana用户名",
                  "example": "admin"
                },
                {
                  "name": "GrafanaPassword",
                  "type": "string",
                  "required": true,
                  "description": "grafana密码",
                  "example": "admin"
                }
              ]
            },
            {
              "name": "ExistedPrometheusInstanceId",
              "type": "string",
              "required": false,
              "description": "Prometheus Id",
              "example": "prom-kkfzhlcn"
            }
          ]
        },
        {
          "name": "ChargeType",
          "type": "string",
          "required": false,
          "description": "计费类型 PREPAID：预付费 POSTPAID_BY_HOUR：后付费",
          "example": "PREPAID"
        },
        {
          "name": "InstanceConfig",
          "type": "object",
          "required": false,
          "description": "实例配置信息",
          "example": "无",
          "children": [
            {
              "name": "Cpu",
              "type": "integer",
              "required": true,
              "description": "核数",
              "example": "1"
            },
            {
              "name": "Mem",
              "type": "integer",
              "required": true,
              "description": "内存大小Gi",
              "example": "2"
            },
            {
              "name": "Size",
              "type": "integer",
              "required": true,
              "description": "集群规模",
              "example": "1"
            }
          ]
        },
        {
          "name": "PrepaidConfig",
          "type": "object",
          "required": false,
          "description": "预付费配置信息",
          "example": "无",
          "children": [
            {
              "name": "Period",
              "type": "integer",
              "required": true,
              "description": "预付费购买周期，单位：月",
              "example": "1"
            },
            {
              "name": "RenewFlag",
              "type": "string",
              "required": true,
              "description": "预付费自动续费设置： NOTIFY_AND_MANUAL_RENEW：表示默认状态(用户未设置，即初始状态)， NOTIFY_AND_AUTO_RENEW：表示自动续费，DISABLE_NOTIFY_AND_MANUAL_RENEW：表示明确不自动续费(用户设置)",
              "example": "NOTIFY_AND_AUTO_RENEW"
            }
          ]
        }
      ],
      "required": [
        "InstanceId"
      ]
    },
    {
      "name": "ModifyEtcdSnapshotPolicy",
      "description": "修改etcd快照策略",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "etcd实例id",
          "example": "etcd-abcd1234"
        },
        {
          "name": "SnapshotPolicyName",
          "type": "string",
          "required": true,
          "description": "快照策略名称",
          "example": "test"
        },
        {
          "name": "BackupSettings",
          "type": "object",
          "required": true,
          "description": "备份参数设置",
          "example": "无",
          "children": [
            {
              "name": "BackupInterval",
              "type": "integer",
              "required": true,
              "description": "备份间隔(s) 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "1"
            },
            {
              "name": "MaxBackupCount",
              "type": "integer",
              "required": true,
              "description": "最大备份个数 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "12"
            },
            {
              "name": "User",
              "type": "string",
              "required": false,
              "description": "用户名 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "user"
            },
            {
              "name": "Password",
              "type": "string",
              "required": false,
              "description": "密码 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "password"
            },
            {
              "name": "CosBucketName",
              "type": "string",
              "required": false,
              "description": "COS桶名称 注意：此字段可能返回 null，表示取不到有效值。",
              "example": "tencentcloud-tke-etcd-backups-ap-guangzhou-1234567"
            }
          ]
        }
      ],
      "required": [
        "InstanceId",
        "SnapshotPolicyName",
        "BackupSettings"
      ]
    },
    {
      "name": "ResizeEtcdInstance",
      "description": "扩容etcd实例",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "实例id",
          "example": "etcd-abcd1234"
        },
        {
          "name": "Size",
          "type": "integer",
          "required": true,
          "description": "etcd节点个数",
          "example": "5"
        }
      ],
      "required": [
        "InstanceId",
        "Size"
      ]
    },
    {
      "name": "UpgradeEtcdInstance",
      "description": "升级etcd实例",
      "status": "online",
      "parameters": [
        {
          "name": "InstanceId",
          "type": "string",
          "required": true,
          "description": "实例id",
          "example": "etcd-abcd1234"
        },
        {
          "name": "EtcdVersion",
          "type": "string",
          "required": true,
          "description": "etcd版本",
          "example": "v3.5.2"
        }
      ],
      "required": [
        "InstanceId",
        "EtcdVersion"
      ]
    }
  ]
}