Updated on 2026-09-30 GMT+08:00

Listing Add-on Templates

Function

This API is used to query add-on templates.

Calling Method

For details, see Calling APIs.

URI

GET /api/v3/addontemplates

Table 1 Query Parameters

Parameter

Mandatory

Type

Description

addon_template_name

No

String

Definition:

Add-on name or alias. If this parameter is not specified, all the add-ons will be obtained.

Constraints:

N/A

Range:

The value must start and end with a letter or digit and can contain 2 to 30 characters. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed.

Default Value:

N/A

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

Content-Type

Yes

String

Definition:

Type (or format) of the request body. The default value is application/json. Other values of this field will be provided for specific APIs, if any.

Constraints:

GET requests are not validated.

Range:

N/A

Default Value:

N/A

X-Auth-Token

Yes

String

Details:

Requests for calling an API can be authenticated using either a token or AK/SK. If token-based authentication is used, this parameter is mandatory and must be set to a user token. For details, see Obtaining a User Token.

Constraints:

None

Options:

N/A

Default value:

N/A

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

kind

String

Definition:

API type. The value is fixed at Addon and cannot be changed.

Range:

  • Addon

apiVersion

String

Definition:

API version. The value is fixed at v3 and cannot be changed.

Range:

  • v3

items

Array of AddonTemplate objects

Definition:

List of add-on templates

Range:

N/A

Table 4 AddonTemplate

Parameter

Type

Description

kind

String

Definition:

API type. The value is fixed at Addon and cannot be changed.

Range:

  • Addon

apiVersion

String

Definition:

API version. The value is fixed at v3 and cannot be changed.

Range:

  • v3

metadata

AddonMetadata object

Definition:

Basic information about an add-on. Metadata is a collection of attributes.

Range:

N/A

spec

Templatespec object

Definition:

Details about an add-on template

Range:

N/A

Table 5 AddonMetadata

Parameter

Type

Description

uid

String

Definition:

Unique ID of an add-on pod, which is automatically generated by the system after the add-on pod is created

Range:

N/A

name

String

Definition:

Add-on name

Range:

N/A

alias

String

Definition:

Add-on alias

Range:

N/A

labels

Map<String,String>

Definition:

Add-on labels in key-value pairs. This is a reserved field. A specified value is invalid.

Range:

N/A

annotations

Map<String,String>

Definition:

Add-on annotations in the format of key-value pairs

Range:

  • The value is fixed at {"addon.install/type":"install"} during installation.

  • The value is fixed at {"addon.upgrade/type":"upgrade"} during an upgrade.

updateTimestamp

String

Definition:

Update time

Range:

N/A

creationTimestamp

String

Definition:

Creation time, which is automatically generated after creation. A specified value does not take effect.

Range:

N/A

Table 6 Templatespec

Parameter

Type

Description

type

String

Definition:

Add-on template type

Range:

  • helm: Helm packages

  • static: static templates

require

Boolean

Definition:

Whether the add-on is mandatory

Range:

  • true: The add-on is mandatory.

  • false: The add-on is optional.

labels

Array of strings

Definition:

Group that the template belongs to

Range:

N/A

logoURL

String

Definition:

Logo image URL

Range:

N/A

readmeURL

String

Definition:

Add-on description and usage instructions

Range:

N/A

description

String

Definition:

Template description

Range:

N/A

versions

Array of Versions objects

Definition:

Template version details

Range:

N/A

Table 7 Versions

Parameter

Type

Description

version

String

Definition:

Add-on version

Range:

N/A

input

Object

Definition:

Add-on installation parameters

Range:

N/A

stable

Boolean

Definition:

Whether the version is stable

Range:

  • true: The version is stable.

  • false: The version is unstable.

translate

Object

Definition:

Translation information used by the GUI

Range:

N/A

supportVersions

Array of SupportVersions objects

Definition:

Supported cluster versions

Range:

N/A

creationTimestamp

String

Definition:

Creation time

Range:

N/A

updateTimestamp

String

Definition:

Update time

Range:

N/A

Table 8 SupportVersions

Parameter

Type

Description

clusterType

String

Definition:

Supported cluster type

VirtualMachine is supported.

Range:

  • VirtualMachine: CCE cluster, where master nodes are x86 servers

  • BareMetal: bare metal cluster, where master nodes are BMSs

clusterVersion

Array of strings

Definition:

Supported cluster version (regular expression)

Range:

N/A

category

Array of strings

Definition:

The cluster type to which the configurations apply

Range:

  • CCE: CCE standard clusters

  • Turbo: CCE Turbo clusters

Example Requests

None

Example Responses

Status code: 200

{
  "kind" : "Addon",
  "apiVersion" : "v3",
  "items" : [ {
    "kind" : "Addon",
    "apiVersion" : "v3",
    "metadata" : {
      "uid" : "coredns",
      "name" : "coredns",
      "alias" : "coredns",
      "creationTimestamp" : "2018-11-04T16:15:56Z",
      "updateTimestamp" : "2022-01-11T14:32:10Z"
    },
    "spec" : {
      "type" : "helm",
      "require" : true,
      "labels" : [ "ServiceDiscovery" ],
      "logoURL" : "",
      "readmeURL" : "******/corednscn-readme.md##******/corednsen-readme.md",
      "description" : "CoreDNS is a DNS server that chains plugins and provides Kubernetes DNS Services",
      "versions" : [ {
        "version" : "1.13.6",
        "input" : {
          "basic" : {
            "cluster_ip" : "10.247.3.10",
            "ipv6" : false,
            "platform" : "linux-amd64",
            "swr_addr" : "100.125.16.65:20202",
            "swr_user" : "hwofficial"
          },
          "parameters" : {
            "custom" : {
              "stub_domains" : "",
              "upstream_nameservers" : ""
            },
            "flavor1" : {
              "name" : 2500,
              "replicas" : 2,
              "resources" : [ {
                "limitsCpu" : "500m",
                "limitsMem" : "512Mi",
                "name" : "coredns",
                "requestsCpu" : "500m",
                "requestsMem" : "512Mi"
              } ]
            },
            "flavor2" : {
              "name" : 5000,
              "replicas" : 2,
              "resources" : [ {
                "limitsCpu" : "1000m",
                "limitsMem" : "1024Mi",
                "name" : "coredns",
                "requestsCpu" : "1000m",
                "requestsMem" : "1024Mi"
              } ]
            },
            "flavor3" : {
              "name" : 10000,
              "replicas" : 2,
              "resources" : [ {
                "limitsCpu" : "2000m",
                "limitsMem" : "2048Mi",
                "name" : "coredns",
                "requestsCpu" : "2000m",
                "requestsMem" : "2048Mi"
              } ]
            },
            "flavor4" : {
              "name" : 20000,
              "replicas" : 4,
              "resources" : [ {
                "limitsCpu" : "2000m",
                "limitsMem" : "2048Mi",
                "name" : "coredns",
                "requestsCpu" : "2000m",
                "requestsMem" : "2048Mi"
              } ]
            }
          }
        },
        "stable" : true,
        "translate" : {
          "en_US" : {
            "addon" : {
              "changeLog" : "Support for clusters with new version",
              "description" : "CoreDNS is a DNS server that chains plugins and provides Kubernetes DNS Services"
            },
            "description" : {
              "Parameters.custom.stub_domains" : "The target nameserver may itself be a Kubernetes service. For instance, you can run your own copy of dnsmasq to export custom DNS names into the ClusterDNS namespace, a JSON map using a DNS suffix key (e.g. \"acme.local\") and a value consisting of a JSON array of DNS IPs.",
              "Parameters.custom.upstream_nameservers" : "If specified, then the values specified replace the nameservers taken by default from the node's /etc/resolv.conf. Limits:a maximum of three upstream nameservers can be specified, A JSON array of DNS IPs.",
              "Parameters.flavor1.description" : "Concurrent domain name resolution ability - External domain name: 2500 qps, Internal domain name: 10000 qps",
              "Parameters.flavor1.name" : 2500,
              "Parameters.flavor2.description" : "Concurrent domain name resolution ability - External domain name: 5000 qps, Internal domain name: 20000 qps",
              "Parameters.flavor2.name" : 5000,
              "Parameters.flavor3.description" : "Concurrent domain name resolution ability - External domain name: 10000 qps, Internal domain name: 40000 qps",
              "Parameters.flavor3.name" : 10000,
              "Parameters.flavor4.description" : "Concurrent domain name resolution ability - External domain name: 20000 qps, Internal domain name: 80000 qps",
              "Parameters.flavor4.name" : 20000
            },
            "key" : {
              "Parameters.custom.stub_domains" : "stub domain",
              "Parameters.custom.upstream_nameservers" : "upstream nameservers"
            }
          },
          "fr_FR" : {
            "addon" : {
              "changeLog" : "Prise en charge des clusters avec une nouvelle version",
              "description" : "Un serveur DNS qui enchaîne les plug-ins et fournit des services DNS Kubernetes."
            },
            "description" : {
              "Parameters.custom.stub_domains" : "Le serveur de noms cible peut lui-même être un service Kubernetes. Par exemple, vous pouvez exécuter votre propre copie de dnsmasq pour exporter des noms DNS personnalisés dans l'espace de noms ClusterDNS, une carte JSON à l'aide d'une clé de suffixe DNS (par exemple, «acme.local») et une valeur constituée d'un tableau JSON d'adresses IP DNS.",
              "Parameters.custom.upstream_nameservers" : "Si spécifié, les valeurs spécifiées remplacent les serveurs de noms pris par défaut dans le fichier /etc/resolv.conf du nœud. Limites: un maximum de trois serveurs de noms en amont peuvent être spécifiés, un tableau JSON d'adresses IP DNS.",
              "Parameters.flavor1.description" : "Capacité de résolution de nom de domaine simultanée - Nom de domaine externe: 2500 qps, Nom de domaine interne: 10000 qp",
              "Parameters.flavor1.name" : 2500,
              "Parameters.flavor2.description" : "Capacité de résolution de nom de domaine simultanée - Nom de domaine externe: 5000 qps, Nom de domaine interne: 20000 qp",
              "Parameters.flavor2.name" : 5000,
              "Parameters.flavor3.description" : "Capacité de résolution de nom de domaine simultanée - Nom de domaine externe: 10000 qps, Nom de domaine interne: 40000 qp",
              "Parameters.flavor3.name" : 10000,
              "Parameters.flavor4.description" : "Capacité de résolution de nom de domaine simultanée - Nom de domaine externe: 20000 qps, Nom de domaine interne: 80000 qp",
              "Parameters.flavor4.name" : 20000
            },
            "key" : {
              "Parameters.custom.stub_domains" : "stub domain",
              "Parameters.custom.upstream_nameservers" : "serveurs de noms en amont"
            }
          },
          "zh_CN" : {
            "addon" : {
              "changeLog" : "",
              "description" : ""
            },
            "description" : {
              "Parameters.custom.stub_domains" : "",
              "Parameters.custom.upstream_nameservers" : "",
              "Parameters.flavor1.description" : "",
              "Parameters.flavor1.name" : 2500,
              "Parameters.flavor2.description" : "",
              "Parameters.flavor2.name" : 5000,
              "Parameters.flavor3.description" : "",
              "Parameters.flavor3.name" : 10000,
              "Parameters.flavor4.description" : "",
              "Parameters.flavor4.name" : 20000
            },
            "key" : {
              "Parameters.custom.stub_domains" : "",
              "Parameters.custom.upstream_nameservers" : ""
            }
          }
        },
        "supportVersions" : [ {
          "clusterType" : "VirtualMachine",
          "clusterVersion" : [ "v1.13.*" ],
          "category" : [ "CCE", "Turbo" ]
        }, {
          "clusterType" : "BareMetal",
          "clusterVersion" : [ "v1.13.*" ],
          "category" : [ "CCE", "Turbo" ]
        }, {
          "clusterType" : "ARM64",
          "clusterVersion" : [ "v1.13.*" ],
          "category" : [ "CCE" ]
        } ],
        "creationTimestamp" : "2021-03-18T12:51:05Z",
        "updateTimestamp" : "2021-03-18T12:51:05Z"
      } ]
    }
  } ]
}

Status Codes

Status Code

Description

200

The add-on template list has been obtained.

Error Codes

See Error Codes.