Updated on 2024-12-20 GMT+08:00

Updating an Organization Policy

Function

This API is used to update an organization policy.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

PUT /v3/{project_id}/organization-policies/{organization_policy_id}

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

organization_policy_id

Yes

String

Organizational policy ID.

project_id

Yes

String

Project ID

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token

The token can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is the user token.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

policy

Yes

OrganizationPolicyUpdate object

Table 4 OrganizationPolicyUpdate

Parameter

Mandatory

Type

Description

name

No

String

Organization Policy Name

description

No

String

Organization Policy Description

policy_name

No

String

Policy Name

policy_enabled

No

Boolean

Whether the policy is enabled

policy_operation_definition

No

PolicyoODCreate object

Policy definition. The specific fields in backup and replication are different and consistent with those in the policy.

policy_trigger

No

PolicyTriggerReq object

Time rule for the policy execution

Table 5 PolicyoODCreate

Parameter

Mandatory

Type

Description

day_backups

No

Integer

Maximum number of daily backups that can be retained. The latest backup of each day is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

destination_project_id

No

String

ID of the replication destination project, which is mandatory for cross-region replication

destination_region

No

String

Replication destination region, which is mandatory for cross-region replication The destination region cannot be the same as the current region. The value contains 0 to 255 characters, including only letters, digits, underscores (_), and hyphens (-).

enable_acceleration

No

Boolean

Whether to enable the acceleration function to shorten the replication time for cross-region replication. If this parameter is not set, the acceleration function is disabled.

max_backups

No

Integer

Maximum number of backups that can be automatically created for a backup object. The value can be -1 or ranges from 0 to 99999. If the value is set to -1, backups will not be cleared by quantity limit. If this parameter and retention_duration_days are left blank at the same time, the backups will be retained permanently. This parameter and retention_duration_days cannot be both applied.

month_backups

No

Integer

Maximum number of monthly backups that can be retained. The latest backup of each month is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

retention_duration_days

No

Integer

Duration of retaining a backup, in days. The maximum value is 99999. If the value is set to -1, backups will not be cleared by retention duration. If this parameter and max_backups are left blank at the same time, the backups will be retained permanently. This parameter cannot be applied together with max_backups, day_backups, week_backups, month_backups, and year_backups.

timezone

No

String

Time zone where the user is located, for example, UTC+08:00. Set this parameter if you have configured any of the parameters: day_backups, week_backups, month_backups, year_backups

week_backups

No

Integer

Maximum number of weekly backups that can be retained. The latest backup of each week is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

year_backups

No

Integer

Maximum number of yearly backups that can be retained. The latest backup of each year is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

full_backup_interval

No

Integer

Defines how often (after how many incremental backups) a full backup is performed. If -1 is specified, full backup will not be performed.

Minimum value: -1

Maximum value: 100

Table 6 PolicyTriggerReq

Parameter

Mandatory

Type

Description

properties

Yes

PolicyTriggerPropertiesReq object

Scheduler attributes

Table 7 PolicyTriggerPropertiesReq

Parameter

Mandatory

Type

Description

pattern

Yes

Array of strings

Scheduling rule. A maximum of 24 rules can be configured. The scheduling rule complies with iCalendar RFC 2445, but it supports only parameters FREQ, BYDAY, BYHOUR, BYMINUTE, and INTERVAL. FREQ can be set only to WEEKLY or DAILY. BYDAY* can be set to MO, TU, WE, TH, FR, SA, or SU (seven days of a week). BYHOUR ranges from 0 to 23 hours. BYMINUTE ranges from 0 minutes to 59 minutes. The scheduling interval must not be less than 1 hour. A maximum of 24 time points are allowed in a day. For example, if the scheduling time is 14:00 (UTC time) from Monday to Sunday, set the scheduling rule as follows: FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU;BYHOUR=14;BYMINUTE=00. For example, if the time of an area is UTC+8. The scheduling is performed at 14:00 every day in this area. The value of FREQ is the same as that of 14:00 minus 8. The rule is as follows: FREQ=DAILY;INTERVAL=1;BYHOUR=6;BYMINUTE=00.

Response Parameters

Status code: 200

Table 8 Response body parameters

Parameter

Type

Description

policy

OrganizationPolicy object

Organization Policy Details

Table 9 OrganizationPolicy

Parameter

Type

Description

id

String

Organization Policy ID

name

String

Organization Policy Name

description

String

Organization Policy Description

operation_type

String

Organizational policy type.

  • backup

  • replication

domain_id

String

Specifies the ID of the account to which the organization policy belongs.

policy_name

String

Policy Name

policy_enabled

Boolean

Whether the policy is enabled

policy_operation_definition

PolicyoODCreate object

Policy definition. The specific fields in backup and replication are different and consistent with those in the policy.

policy_trigger

PolicyTriggerReq object

Time rule for the policy execution

status

String

Organization Policy Status

domain_name

String

Account to which the organizational policy belongs.

Table 10 PolicyoODCreate

Parameter

Type

Description

day_backups

Integer

Maximum number of daily backups that can be retained. The latest backup of each day is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

destination_project_id

String

ID of the replication destination project, which is mandatory for cross-region replication

destination_region

String

Replication destination region, which is mandatory for cross-region replication The destination region cannot be the same as the current region. The value contains 0 to 255 characters, including only letters, digits, underscores (_), and hyphens (-).

enable_acceleration

Boolean

Whether to enable the acceleration function to shorten the replication time for cross-region replication. If this parameter is not set, the acceleration function is disabled.

max_backups

Integer

Maximum number of backups that can be automatically created for a backup object. The value can be -1 or ranges from 0 to 99999. If the value is set to -1, backups will not be cleared by quantity limit. If this parameter and retention_duration_days are left blank at the same time, the backups will be retained permanently. This parameter and retention_duration_days cannot be both applied.

month_backups

Integer

Maximum number of monthly backups that can be retained. The latest backup of each month is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

retention_duration_days

Integer

Duration of retaining a backup, in days. The maximum value is 99999. If the value is set to -1, backups will not be cleared by retention duration. If this parameter and max_backups are left blank at the same time, the backups will be retained permanently. This parameter cannot be applied together with max_backups, day_backups, week_backups, month_backups, and year_backups.

timezone

String

Time zone where the user is located, for example, UTC+08:00. Set this parameter if you have configured any of the parameters: day_backups, week_backups, month_backups, year_backups

week_backups

Integer

Maximum number of weekly backups that can be retained. The latest backup of each week is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

year_backups

Integer

Maximum number of yearly backups that can be retained. The latest backup of each year is saved in the long term. This parameter and max_backups will both be applied. The value ranges from 0 to 100. If this parameter is configured, timezone is mandatory. This parameter and retention_duration_days cannot be both applied.

full_backup_interval

Integer

Defines how often (after how many incremental backups) a full backup is performed. If -1 is specified, full backup will not be performed.

Minimum value: -1

Maximum value: 100

Table 11 PolicyTriggerReq

Parameter

Type

Description

properties

PolicyTriggerPropertiesReq object

Scheduler attributes

Table 12 PolicyTriggerPropertiesReq

Parameter

Type

Description

pattern

Array of strings

Scheduling rule. A maximum of 24 rules can be configured. The scheduling rule complies with iCalendar RFC 2445, but it supports only parameters FREQ, BYDAY, BYHOUR, BYMINUTE, and INTERVAL. FREQ can be set only to WEEKLY or DAILY. BYDAY* can be set to MO, TU, WE, TH, FR, SA, or SU (seven days of a week). BYHOUR ranges from 0 to 23 hours. BYMINUTE ranges from 0 minutes to 59 minutes. The scheduling interval must not be less than 1 hour. A maximum of 24 time points are allowed in a day. For example, if the scheduling time is 14:00 (UTC time) from Monday to Sunday, set the scheduling rule as follows: FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU;BYHOUR=14;BYMINUTE=00. For example, if the time of an area is UTC+8. The scheduling is performed at 14:00 every day in this area. The value of FREQ is the same as that of 14:00 minus 8. The rule is as follows: FREQ=DAILY;INTERVAL=1;BYHOUR=6;BYMINUTE=00.

Example Requests

Updating an organization policy

PUT https://{endpoint}/v3/{project_id}/organization-policies

{
  "policy" : {
    "policy_enabled" : false,
    "policy_name" : "policy_update_test",
    "policy_operation_definition" : {
      "retention_duration_days" : 30,
      "max_backups" : -1,
      "day_backups" : 0,
      "week_backups" : 0,
      "month_backups" : 0,
      "year_backups" : 0,
      "timezone" : "UTC+08:00",
      "full_backup_interval" : -1
    },
    "policy_trigger" : {
      "properties" : {
        "pattern" : [ "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU;BYHOUR=14;BYMINUTE=00" ]
      }
    },
    "name" : "organization-policies_update_test",
    "description" : ""
  }
}

Example Responses

Status code: 200

OK

{
  "policy" : {
    "id" : "5f5dd325-d7d1-4693-9d97-db37ecb91696",
    "name" : "organization-policies_update_test",
    "description" : "",
    "operation_type" : "backup",
    "domain_id" : "0ae13f008700d53f0fb4c01200e79660",
    "policy_name" : "policy_update_test",
    "policy_operation_definition" : {
      "max_backups" : -1,
      "retention_duration_days" : 30,
      "day_backups" : 0,
      "week_backups" : 0,
      "month_backups" : 0,
      "year_backups" : 0,
      "timezone" : "UTC+08:00",
      "full_backup_interval" : -1
    },
    "policy_enabled" : false,
    "policy_trigger" : {
      "properties" : {
        "pattern" : [ "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR,SA,SU;BYHOUR=14;BYMINUTE=00" ]
      }
    },
    "status" : "syncing"
  }
}

Status Codes

Status Code

Description

200

OK

Error Codes

See Error Codes.