Help Center/ TaurusDB/ API Reference/ APIs (Recommended)/ SQL Throttling/ Configuring SQL Throttling Rules
Updated on 2025-07-11 GMT+08:00

Configuring SQL Throttling Rules

Function

This API is used to configure SQL throttling rules. Before calling this API:

URI

PUT /v3/{project_id}/instances/{instance_id}/sql-filter/rules

Table 1 URI parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID of a tenant in a region.

To obtain this value, see Obtaining a Project ID.

instance_id

Yes

String

Instance ID, which is compliant with the UUID format.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Definition:

User token. To obtain this value, call the IAM API for obtaining a user token.

The value of X-Subject-Token in the response header is the token value.

Constraints:

N/A

Range:

N/A

Default value:

N/A

X-Language

No

String

Definition:

Request language type.

Constraints:

N/A

Range:

  • en-us

  • zh-cn

Default value:

en-us

Table 3 Request body parameter

Parameter

Mandatory

Type

Description

sql_filter_rules

Yes

Array of NodeSqlFilterRuleInfo objects

SQL throttling rules for nodes.

Table 4 NodeSqlFilterRuleInfo

Parameter

Mandatory

Type

Description

node_id

Yes

String

Node ID.

rules

Yes

Array of NodeSqlFilterRule objects

SQL throttling rules. The sql_type value must be unique.

Table 5 NodeSqlFilterRule

Parameter

Mandatory

Type

Description

sql_type

Yes

String

SQL statements.

Values:

  • SELECT
  • UPDATE
  • DELETE

patterns

Yes

Array of NodeSqlFilterRulePattern objects

SQL throttling rules.

Table 6 NodeSqlFilterRulePattern

Parameter

Mandatory

Type

Description

pattern

Yes

String

SQL throttling rule. A rule can consist of up to 128 keywords. The keywords are separated by tildes (~), for example, select~from~t1. The rule cannot contain backslashes (\), commas (,), or double tildes (~~). It cannot end with tildes (~).

max_concurrency

Yes

Integer

Maximum number of concurrent SQL statements.

Value: a non-negative integer.

Response Parameters

Status code: 200

Table 7 Response body parameter

Parameter

Type

Description

job_id

String

ID of the task for configuring SQL throttling rules.

Status code: 400

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Status code: 500

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error message.

Example Request

Configuring SQL throttling rules (SQL statements include SELECT, UPDATE, and DELETE.)

PUT https://{endpoint}/v3/054e292c9880d4992f02c0196d3ea468/instance/af315b8e6aaa41799bd9a31f2de15abcin07/sql-filter/rules
{
  "sql_filter_rules" : [ {
    "node_id" : "c01a5645eb2c4fb6a9373542f5366e50no07",
    "rules" : [ {
      "sql_type" : "SELECT",
      "patterns" : [ {
        "pattern" : "select~from~t1",
        "max_concurrency" : 0
      }, {
        "pattern" : "select~from~t3~where~id",
        "max_concurrency" : 10
      } ]
    }, {
      "sql_type" : "UPDATE",
      "patterns" : [ {
        "pattern" : "update~t3~where~id",
        "max_concurrency" : 10
      } ]
    } ]
  }, {
    "node_id" : "b234a5645eb2c4ji3b9372342f5362397no07",
    "rules" : [ {
      "sql_type" : "SELECT",
      "patterns" : [ {
        "pattern" : "select~from~t3~where~id",
        "max_concurrency" : 10
      } ]
    }, {
      "sql_type" : "DELETE",
      "patterns" : [ {
        "pattern" : "delete~t3~where~id",
        "max_concurrency" : 10
      } ]
    } ]
  } ]
}

Example Response

Status code: 200

Success.

{
  "job_id" : "aef6a470-fb63-4d5b-b644-12ead7e019b3"
}

Status Code

For details, see Status Codes.

Error Code

For details, see Error Codes.