Help Center/ CodeArts Pipeline/ API Reference/ API/ Extension Management/ Querying All Versions of an Extension
Updated on 2025-09-08 GMT+08:00

Querying All Versions of an Extension

Function

This API is used to query all versions of an extension.

Calling Method

For details, see Calling APIs.

URI

GET /v1/{domain_id}/agent-plugin/query

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

domain_id

Yes

String

Definition:

Tenant ID.

Constraints:

N/A

Value range:

The value consists of 32 characters, including digits and letters.

Default value:

N/A

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

plugin_name

Yes

String

Definition:

Extension name.

Constraints:

Enter only letters, digits, hyphens (-), and underscores (_).

Value range:

1 to 50 characters.

Default value:

N/A

offset

Yes

String

Definition:

Offset where the query starts. This parameter must be used together with limit.

Constraints:

N/A

Value range:

The offset value must be no less than 0.

Default value:

N/A

limit

Yes

String

Definition:

Number of records of each query.

Constraints:

N/A

Value range:

1–100.

Default value:

N/A

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Definition:

User token. Obtain a token (the value of the X-Subject-Token response header) by calling the IAM API forobtaining a user token.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

offset

Integer

Definition:

Offset where the query starts.

Constraints:

N/A

Value range:

The offset value must be no less than 0.

Default value:

0.

limit

Integer

Definition:

Number of records of each query.

Constraints:

N/A

Value range:

The value is no less than 0.

Default value:

N/A

total

Integer

Definition:

Total number of items.

Value range:

The value is no less than 0.

data

Array of PluginBasicVO objects

Definition:

Extension list.

Value range:

N/A

Table 5 PluginBasicVO

Parameter

Type

Description

plugin_name

String

Definition:

Extension name.

Value range:

1 to 50 characters.

display_name

String

Definition:

Extension name.

Value range:

N/A

db_record_name

String

Definition:

Display name of extension record.

Value range:

N/A

version

String

Definition:

Extension version number.

Value range:

N/A

version_description

String

Definition:

Extension version number description.

Value range:

N/A

description

String

Definition:

Extension description.

Value range:

N/A

version_attribution

String

Definition:

Extension version attribute.

Value range:

- draft: draft version.

- formal: formal version.

unique_id

String

Definition:

Extension ID.

Value range:

N/A

op_user

String

Definition:

User who last updated the extension.

Value range:

N/A

op_time

String

Definition:

Time when the extension was last updated.

Value range:

N/A

plugin_composition_type

String

Definition:

Whether the extension consists of multiple steps.

Value range:

  • multi: multi-step extension.

  • single: single-step extension.

plugin_attribution

String

Definition:

Extension attribute.

Value range:

  • custom: custom extension.

  • official: official extension.

  • published: extension published by the publisher.

workspace_id

String

Definition:

Tenant ID, that is, domain ID of a user.

Value range:

The value consists of 32 characters, including only digits and letters.

business_type

String

Definition:

Extension service type.

Value range:

N/A

business_type_display_name

String

Definition:

Displayed service type of the extension.

Value range:

N/A

maintainers

String

Definition:

Extension maintainer.

Value range:

N/A

icon_url

String

Definition:

Extension icon address.

Value range:

N/A

refer_count

Integer

Definition:

Number of times that the extension is referenced by pipelines.

Value range:

N/A

usage_count

Integer

Definition:

Number of times that the extension is used by pipelines.

Value range:

N/A

runtime_attribution

String

Definition:

Running attribute.

Value range:

  • agent: Pipeline agent is required for running.

  • agentLess: No pipeline agent is required.

active

Integer

Definition:

Whether the extension is activated.

Value range:

  • true: activated.

  • false: not activated.

version_state

String

Definition:

Status of the current extension version.

Value range:

N/A

publisher_unique_id

String

Definition:

Publisher ID.

Value range:

N/A

creator

String

Definition:

Creator name.

Value range:

N/A

create_time

String

Definition:

Creation time.

Value range:

N/A

manifest_version

String

Definition:

Extension version identifier.

Value range:

N/A

Status code: 400

Table 6 Response body parameters

Parameter

Type

Description

error_msg

String

Parameter description:

Error message.

Value range:

N/A

error_code

String

Parameter description:

Error code.

Value range:

N/A

Example Requests

GET https://{endpoint}/v1/ce8df55870164338a72d7e828a966a2a/agent-plugin/query?plugin_name=fff&offset=0&limit=1

Example Responses

Status code: 200

OK

{
  "offset" : 0,
  "limit" : 1,
  "total" : 1,
  "data" : [ {
    "plugin_name" : "fff",
    "display_name" : "hhjk",
    "version" : "0.0.1",
    "version_description" : "",
    "description" : "",
    "version_attribution" : "formal",
    "unique_id" : "d4d18039ac4248b68d38aca463a0c35a",
    "op_user" : "devcloud_devcloud_h00485561_01",
    "op_time" : "1699931374000",
    "plugin_composition_type" : "multi",
    "plugin_attribution" : "custom",
    "workspace_id" : "ce8df55870164338a72d7e828a966a2a",
    "business_type" : "Normal",
    "business_type_display_name" : "General",
    "maintainers" : "[\"847a5317086c41798469d0868535943a\"]",
    "icon_url" : "",
    "refer_count" : null,
    "usage_count" : null,
    "runtime_attribution" : "agent",
    "active" : 1
  } ]
}

SDK Sample Code

The SDK sample code is as follows.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
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.codeartspipeline.v2.region.CodeArtsPipelineRegion;
import com.huaweicloud.sdk.codeartspipeline.v2.*;
import com.huaweicloud.sdk.codeartspipeline.v2.model.*;


public class ListPLuginVersionSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

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

        CodeArtsPipelineClient client = CodeArtsPipelineClient.newBuilder()
                .withCredential(auth)
                .withRegion(CodeArtsPipelineRegion.valueOf("<YOUR REGION>"))
                .build();
        ListPLuginVersionRequest request = new ListPLuginVersionRequest();
        request.withDomainId("{domain_id}");
        try {
            ListPLuginVersionResponse response = client.listPLuginVersion(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());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcodeartspipeline.v2.region.codeartspipeline_region import CodeArtsPipelineRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcodeartspipeline.v2 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = BasicCredentials(ak, sk)

    client = CodeArtsPipelineClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CodeArtsPipelineRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ListPLuginVersionRequest()
        request.domain_id = "{domain_id}"
        response = client.list_p_lugin_version(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package main

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

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

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

    client := codeartspipeline.NewCodeArtsPipelineClient(
        codeartspipeline.CodeArtsPipelineClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListPLuginVersionRequest{}
	request.DomainId = "{domain_id}"
	response, err := client.ListPLuginVersion(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.

Status Codes

Status Code

Description

200

OK

400

Bad request

401

Unauthorized

403

Forbidden

404

Not Found

Error Codes

See Error Codes.