Help Center/ TaurusDB/ API Reference/ APIs/ Event Management/ Performing Operations on Events
Updated on 2026-09-14 GMT+08:00

Performing Operations on Events

Function

This API is used to perform operations on events, such as authorizing immediate execution, canceling execution, or authorizing scheduled execution. Before calling this API:

Calling Method

For details, see Calling APIs.

Authorization Information

Each account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions.

  • If you are using identity policy-based authorization, the following identity policy-based permissions are required.

    Action

    Access Level

    Resource Type (*: required)

    Condition Key

    Alias

    Dependency

    gaussdbformysql:event:operateScheduleEvents

    Permission_management

    -

    -

    gaussdb:event:operateScheduleEvents

    -

URI

POST /v3/{project_id}/schedule-events

Table 1 URI parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Definition

Project ID of a tenant in a region.

To obtain this value, see Obtaining a Project ID.

Constraints

N/A

Range

The value contains 32 characters. Only letters and digits are allowed.

Default Value

N/A

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: English

  • zh-cn: Chinese

Default Value

en-us

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

operation_type

Yes

String

Definition

Event operation type.

Constraints

N/A

Range

  • execute: immediate execution

  • cancel: execution cancellation

  • reservation: scheduled execution

Default Value

N/A

event_instances

Yes

Array of EventInstances objects

Definition

Event information.

Constraints

A maximum of 20 events are allowed in a batch.

event_schedule_window

No

EventScheduleWindow object

Definition

Event execution window.

Constraints

This parameter is mandatory when operation_type is set to reservation.

Table 4 EventInstances

Parameter

Mandatory

Type

Description

event_id

Yes

String

Definition

Event ID.

To obtain this value, see Obtaining the Event List.

Constraints

N/A

Range

The value contains 36 characters, starting with a UUID and ending with ev07. Only letters and digits are allowed.

Default Value

N/A

Table 5 EventScheduleWindow

Parameter

Mandatory

Type

Description

planned_day

Yes

String

Definition

Execution date.

Constraints

The value is in yyyy-mm-dd format.

Range

The value must be later than or equal to the current date.

Default Value

N/A

start_time

No

String

Definition

Start time of the event execution window.

Constraints

The value is in hh:mm format. This parameter is mandatory when end_time is specified.

Range

N/A

Default Value

01:00

end_time

No

String

Definition

End time of the event execution window.

Constraints

The value is in hh:mm format. This parameter is mandatory when start_time is specified.

Range

N/A

Default Value

03:00

Response Parameters

Status code: 200

Table 6 Response body parameters

Parameter

Type

Description

results

Array of EventJobResult objects

Definition

Response result of setting the event execution policy.

Table 7 EventJobResult

Parameter

Type

Description

event_id

String

Definition

Event ID.

Range

The value contains 36 characters, starting with a UUID and ending with ev07. Only letters and digits are allowed.

instance_id

String

Definition

Instance ID.

Range

The value contains 36 characters, starting with a UUID and ending with in07. Only letters and digits are allowed.

job_id

String

Definition

ID of the event operation task.

Range

N/A

success

Boolean

Definition

Whether the task is successfully delivered.

Range

  • true: The task is successfully delivered.

  • false: The task failed to be delivered.

error_code

String

Definition

Error code.

Range

N/A

error_msg

String

Definition

Error message.

Range

N/A

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

  • Executing an event

    POST https://{endpoint}/v3/054e292c9880d4992f02c0196d3ea468/schedule-events
    
    {
      "operation_type" : "execute",
      "event_instances" : [ {
        "event_id" : "18855d0aa0c14685998e727a70d2760cev07"
      } ]
    }
  • Canceling an event

    POST https://{endpoint}/v3/054e292c9880d4992f02c0196d3ea468/schedule-events
    
    {
      "operation_type" : "cancel",
      "event_instances" : [ {
        "event_id" : "18855d0aa0c14685998e727a70d2760cev07"
      } ]
    }
  • Scheduling event execution

    POST https://{endpoint}/v3/054e292c9880d4992f02c0196d3ea468/schedule-events
    
    {
      "operation_type" : "reservation",
      "event_instances" : [ {
        "event_id" : "18855d0aa0c14685998e727a70d2760cev07"
      } ],
      "event_schedule_window" : {
        "planned_day" : "2025-12-17",
        "start_time" : "01:00",
        "end_time" : "02:00"
      }
    }

Example Response

Status code: 200

Success.

{
  "results" : [ {
    "event_id" : "18855d0aa0c14685998e727a70d2760cev07",
    "instance_id" : "5437da4b09c9450d9a4b87432bbf1336in07",
    "job_id" : "2f092208-43b4-467f-b317-11001e5667ea",
    "success" : true,
    "error_code" : null,
    "error_msg" : null
  } ]
}

SDK Sample Code

The SDK sample code is as follows.

  • Executing an event

     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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    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.gaussdb.v3.region.GaussDBRegion;
    import com.huaweicloud.sdk.gaussdb.v3.*;
    import com.huaweicloud.sdk.gaussdb.v3.model.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class SetInstanceScheduleEventsSolution {
    
        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");
            String projectId = "{project_id}";
    
            ICredential auth = new BasicCredentials()
                    .withProjectId(projectId)
                    .withAk(ak)
                    .withSk(sk);
    
            GaussDBClient client = GaussDBClient.newBuilder()
                    .withCredential(auth)
                    .withRegion(GaussDBRegion.valueOf("<YOUR REGION>"))
                    .build();
            SetInstanceScheduleEventsRequest request = new SetInstanceScheduleEventsRequest();
            SetInstanceScheduleEventsRequestBody body = new SetInstanceScheduleEventsRequestBody();
            List<EventInstances> listbodyEventInstances = new ArrayList<>();
            listbodyEventInstances.add(
                new EventInstances()
                    .withEventId("18855d0aa0c14685998e727a70d2760cev07")
            );
            body.withEventInstances(listbodyEventInstances);
            body.withOperationType("execute");
            request.withBody(body);
            try {
                SetInstanceScheduleEventsResponse response = client.setInstanceScheduleEvents(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());
            }
        }
    }
    
  • Canceling an event

     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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    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.gaussdb.v3.region.GaussDBRegion;
    import com.huaweicloud.sdk.gaussdb.v3.*;
    import com.huaweicloud.sdk.gaussdb.v3.model.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class SetInstanceScheduleEventsSolution {
    
        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");
            String projectId = "{project_id}";
    
            ICredential auth = new BasicCredentials()
                    .withProjectId(projectId)
                    .withAk(ak)
                    .withSk(sk);
    
            GaussDBClient client = GaussDBClient.newBuilder()
                    .withCredential(auth)
                    .withRegion(GaussDBRegion.valueOf("<YOUR REGION>"))
                    .build();
            SetInstanceScheduleEventsRequest request = new SetInstanceScheduleEventsRequest();
            SetInstanceScheduleEventsRequestBody body = new SetInstanceScheduleEventsRequestBody();
            List<EventInstances> listbodyEventInstances = new ArrayList<>();
            listbodyEventInstances.add(
                new EventInstances()
                    .withEventId("18855d0aa0c14685998e727a70d2760cev07")
            );
            body.withEventInstances(listbodyEventInstances);
            body.withOperationType("cancel");
            request.withBody(body);
            try {
                SetInstanceScheduleEventsResponse response = client.setInstanceScheduleEvents(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());
            }
        }
    }
    
  • Scheduling event execution

     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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    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.gaussdb.v3.region.GaussDBRegion;
    import com.huaweicloud.sdk.gaussdb.v3.*;
    import com.huaweicloud.sdk.gaussdb.v3.model.*;
    
    import java.util.List;
    import java.util.ArrayList;
    
    public class SetInstanceScheduleEventsSolution {
    
        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");
            String projectId = "{project_id}";
    
            ICredential auth = new BasicCredentials()
                    .withProjectId(projectId)
                    .withAk(ak)
                    .withSk(sk);
    
            GaussDBClient client = GaussDBClient.newBuilder()
                    .withCredential(auth)
                    .withRegion(GaussDBRegion.valueOf("<YOUR REGION>"))
                    .build();
            SetInstanceScheduleEventsRequest request = new SetInstanceScheduleEventsRequest();
            SetInstanceScheduleEventsRequestBody body = new SetInstanceScheduleEventsRequestBody();
            List<EventInstances> listbodyEventInstances = new ArrayList<>();
            listbodyEventInstances.add(
                new EventInstances()
                    .withEventId("18855d0aa0c14685998e727a70d2760cev07")
            );
            body.withEventScheduleWindow("{\"start_time\":\"01:00\",\"end_time\":\"02:00\",\"planned_day\":\"2025-12-17\"}");
            body.withEventInstances(listbodyEventInstances);
            body.withOperationType("reservation");
            request.withBody(body);
            try {
                SetInstanceScheduleEventsResponse response = client.setInstanceScheduleEvents(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());
            }
        }
    }
    
  • Executing an event

     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
    # coding: utf-8
    
    import os
    from huaweicloudsdkcore.auth.credentials import BasicCredentials
    from huaweicloudsdkgaussdb.v3.region.gaussdb_region import GaussDBRegion
    from huaweicloudsdkcore.exceptions import exceptions
    from huaweicloudsdkgaussdb.v3 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"]
        projectId = "{project_id}"
    
        credentials = BasicCredentials(ak, sk, projectId)
    
        client = GaussDBClient.new_builder() \
            .with_credentials(credentials) \
            .with_region(GaussDBRegion.value_of("<YOUR REGION>")) \
            .build()
    
        try:
            request = SetInstanceScheduleEventsRequest()
            listEventInstancesbody = [
                EventInstances(
                    event_id="18855d0aa0c14685998e727a70d2760cev07"
                )
            ]
            request.body = SetInstanceScheduleEventsRequestBody(
                event_instances=listEventInstancesbody,
                operation_type="execute"
            )
            response = client.set_instance_schedule_events(request)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
    
  • Canceling an event

     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
    # coding: utf-8
    
    import os
    from huaweicloudsdkcore.auth.credentials import BasicCredentials
    from huaweicloudsdkgaussdb.v3.region.gaussdb_region import GaussDBRegion
    from huaweicloudsdkcore.exceptions import exceptions
    from huaweicloudsdkgaussdb.v3 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"]
        projectId = "{project_id}"
    
        credentials = BasicCredentials(ak, sk, projectId)
    
        client = GaussDBClient.new_builder() \
            .with_credentials(credentials) \
            .with_region(GaussDBRegion.value_of("<YOUR REGION>")) \
            .build()
    
        try:
            request = SetInstanceScheduleEventsRequest()
            listEventInstancesbody = [
                EventInstances(
                    event_id="18855d0aa0c14685998e727a70d2760cev07"
                )
            ]
            request.body = SetInstanceScheduleEventsRequestBody(
                event_instances=listEventInstancesbody,
                operation_type="cancel"
            )
            response = client.set_instance_schedule_events(request)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
    
  • Scheduling event execution

     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
    # coding: utf-8
    
    import os
    from huaweicloudsdkcore.auth.credentials import BasicCredentials
    from huaweicloudsdkgaussdb.v3.region.gaussdb_region import GaussDBRegion
    from huaweicloudsdkcore.exceptions import exceptions
    from huaweicloudsdkgaussdb.v3 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"]
        projectId = "{project_id}"
    
        credentials = BasicCredentials(ak, sk, projectId)
    
        client = GaussDBClient.new_builder() \
            .with_credentials(credentials) \
            .with_region(GaussDBRegion.value_of("<YOUR REGION>")) \
            .build()
    
        try:
            request = SetInstanceScheduleEventsRequest()
            listEventInstancesbody = [
                EventInstances(
                    event_id="18855d0aa0c14685998e727a70d2760cev07"
                )
            ]
            request.body = SetInstanceScheduleEventsRequestBody(
                event_schedule_window="{\"start_time\":\"01:00\",\"end_time\":\"02:00\",\"planned_day\":\"2025-12-17\"}",
                event_instances=listEventInstancesbody,
                operation_type="reservation"
            )
            response = client.set_instance_schedule_events(request)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
    
  • Executing an event

     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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    package main
    
    import (
    	"fmt"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
        gaussdb "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/model"
        region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/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")
        projectId := "{project_id}"
    
        auth, err := basic.NewCredentialsBuilder().
            WithAk(ak).
            WithSk(sk).
            WithProjectId(projectId).
            SafeBuild()
    
        if err != nil {
            fmt.Println(err)
            return
        }
    
        hcClient, err := gaussdb.GaussDBClientBuilder().
             WithRegion(region.ValueOf("<YOUR REGION>")).
             WithCredential(auth).
             SafeBuild()
    
    
        if err != nil {
            fmt.Println(err)
            return
        }
    
        client := gaussdb.NewGaussDBClient(hcClient)
    
        request := &model.SetInstanceScheduleEventsRequest{}
    	var listEventInstancesbody = []model.EventInstances{
            {
                EventId: "18855d0aa0c14685998e727a70d2760cev07",
            },
        }
    	request.Body = &model.SetInstanceScheduleEventsRequestBody{
    		EventInstances: listEventInstancesbody,
    		OperationType: "execute",
    	}
    	response, err := client.SetInstanceScheduleEvents(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
    
  • Canceling an event

     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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    package main
    
    import (
    	"fmt"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
        gaussdb "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/model"
        region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/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")
        projectId := "{project_id}"
    
        auth, err := basic.NewCredentialsBuilder().
            WithAk(ak).
            WithSk(sk).
            WithProjectId(projectId).
            SafeBuild()
    
        if err != nil {
            fmt.Println(err)
            return
        }
    
        hcClient, err := gaussdb.GaussDBClientBuilder().
             WithRegion(region.ValueOf("<YOUR REGION>")).
             WithCredential(auth).
             SafeBuild()
    
    
        if err != nil {
            fmt.Println(err)
            return
        }
    
        client := gaussdb.NewGaussDBClient(hcClient)
    
        request := &model.SetInstanceScheduleEventsRequest{}
    	var listEventInstancesbody = []model.EventInstances{
            {
                EventId: "18855d0aa0c14685998e727a70d2760cev07",
            },
        }
    	request.Body = &model.SetInstanceScheduleEventsRequestBody{
    		EventInstances: listEventInstancesbody,
    		OperationType: "cancel",
    	}
    	response, err := client.SetInstanceScheduleEvents(request)
    	if err == nil {
            fmt.Printf("%+v\n", response)
        } else {
            fmt.Println(err)
        }
    }
    
  • Scheduling event execution

     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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    package main
    
    import (
    	"fmt"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
        gaussdb "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3"
    	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/model"
        region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/gaussdb/v3/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")
        projectId := "{project_id}"
    
        auth, err := basic.NewCredentialsBuilder().
            WithAk(ak).
            WithSk(sk).
            WithProjectId(projectId).
            SafeBuild()
    
        if err != nil {
            fmt.Println(err)
            return
        }
    
        hcClient, err := gaussdb.GaussDBClientBuilder().
             WithRegion(region.ValueOf("<YOUR REGION>")).
             WithCredential(auth).
             SafeBuild()
    
    
        if err != nil {
            fmt.Println(err)
            return
        }
    
        client := gaussdb.NewGaussDBClient(hcClient)
    
        request := &model.SetInstanceScheduleEventsRequest{}
    	var listEventInstancesbody = []model.EventInstances{
            {
                EventId: "18855d0aa0c14685998e727a70d2760cev07",
            },
        }
    	var eventScheduleWindowSetInstanceScheduleEventsRequestBody interface{} = "{\"start_time\":\"01:00\",\"end_time\":\"02:00\",\"planned_day\":\"2025-12-17\"}"
    	request.Body = &model.SetInstanceScheduleEventsRequestBody{
    		EventScheduleWindow: &eventScheduleWindowSetInstanceScheduleEventsRequestBody,
    		EventInstances: listEventInstancesbody,
    		OperationType: "reservation",
    	}
    	response, err := client.SetInstanceScheduleEvents(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 Code

For details, see Status Codes.

Error Code

For details, see Error Codes.