Updated on 2026-01-12 GMT+08:00

Creating a Rule

Function

This API is used to create a rule.

Calling Method

For details, see Calling APIs.

URI

POST /v2/{domain_id}/rules/create

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

domain_id

Yes

String

Definition:

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

Constraints:

N/A

Range:

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

Default value:

N/A

Request Parameters

Table 2 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 for .

Constraints:

N/A

Value range:

N/A

Default value:

N/A

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

type

Yes

String

Definition:

Type of the rule to be created.

Constraints:

N/A

Value range:

  • Build.

  • Gate.

  • Deploy.

  • Test.

  • Normal.

Default value:

N/A

name

Yes

String

Definition:

Rule name.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

layout_content

Yes

String

Definition:

Layout content.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

plugin_id

No

String

Definition:

Extension ID. Obtain the ID by calling the API for querying the extension details. unique_id indicates extension ID.

Constraints:

N/A

Value range:

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

Default value:

N/A

plugin_name

No

String

Definition:

Extension name.

Constraints:

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

Value range:

1 to 50 characters.

Default value:

N/A

plugin_version

No

String

Definition:

Extension version number.

Constraints:

The value must be in the format of x.xx.xx, where x is a number ranging from 0 to 99. xx indicates the number following the dot (.). Each xx can be a one-digit or two-digit number.

Value range:

N/A

Default value:

N/A

content

Yes

Array of RuleContent objects

Definition:

Rule attribute group list.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

Table 4 RuleContent

Parameter

Mandatory

Type

Description

group_name

Yes

String

Definition:

Group name.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

can_modify_when_inherit

No

Boolean

Definition:

Whether the threshold of the inherited sub-policy can be modified.

Constraints:

N/A

Range:

  • true: The threshold can be modified.

  • false: The threshold cannot be modified.

Default value:

N/A

editable

No

Boolean

Definition:

Editable or not.

Constraints:

N/A

Range:

  • true: editable.

  • false: not editable.

Default value:

N/A

properties

Yes

Array of RuleProperty objects

Definition:

Rule attributes.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

Table 5 RuleProperty

Parameter

Mandatory

Type

Description

key

Yes

String

Definition:

Attribute key.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

type

Yes

String

Definition:

Rule type.

Constraints:

N/A

Range:

  • Build: build.

  • Gate: code check.

  • Test: test.

Default value:

N/A

name

Yes

String

Definition:

Displayed name.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

operator

No

String

Definition:

Comparison operator.

Constraints:

N/A

Range:

  • =: equal to.

  • >: greater than.

  • <: less than.

  • >=: greater than or equal to.

  • <=: less than or equal to.

  • !=: not equal to.

  • in: included.

  • not in: not included.

Default value:

N/A

value

Yes

String

Definition:

Attribute value.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

value_type

Yes

String

Definition:

Data type.

Constraints:

N/A

Value range:

  • float: numeric type

  • string: string type.

Default value:

N/A

is_valid

No

Boolean

Definition:

Attribute enabled or not.

Constraints:

N/A

Value range:

  • true: enabled.

  • false: disabled.

Default value:

false.

Response Parameters

Status code: 200

Table 6 Response body parameters

Parameter

Type

Description

status

Boolean

Definition:

Creation status.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

rule_id

String

Definition:

Rule ID.

Constraints:

N/A

Value range:

N/A

Default value:

N/A

Status code: 400

Table 7 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

POST https://{endpoint}/v2/ce8df55870164338a72d7e828a966a2a/rules/create

{
  "name" : "Creating a Rule - 20231020170337",
  "type" : "Build",
  "plugin_id" : "official_devcloud_cloudBuild",
  "plugin_name" : "official_devcloud_cloudBuild",
  "plugin_version" : "0.0.15",
  "layout_content" : "layout_content",
  "content" : [ {
    "group_name" : "MavenUnitTest",
    "properties" : [ {
      "key" : "build.PassRatio",
      "name" : "PassRatio",
      "type" : "judge",
      "operator" : "=",
      "value_type" : "float",
      "value" : "0.1"
    }, {
      "key" : "build.TotalCases",
      "name" : "TotalCases",
      "type" : "judge",
      "operator" : "=",
      "value_type" : "float",
      "value" : "0.1"
    }, {
      "key" : "build.CoverageRatio",
      "name" : "CoverageRatio",
      "type" : "judge",
      "operator" : "=",
      "value_type" : "float",
      "value" : "0.1"
    } ]
  } ]
}

Example Responses

Status code: 200

OK

{
  "status" : true,
  "rule_id" : "2965ed53fe804115816b781ab20fef3c"
}

Status Codes

Status Code

Description

200

OK

400

Bad request

401

Unauthorized

403

Forbidden

404

Not Found

Error Codes

See Error Codes.