Updated on 2024-04-19 GMT+08:00

Updating an SNAT Rule

Function

This API is used to update a specified SNAT rule.

Calling Method

For details, see Calling APIs.

URI

PUT /v3/{project_id}/private-nat/snat-rules/{snat_rule_id}

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Specifies the project ID.

Minimum: 1

Maximum: 36

snat_rule_id

Yes

String

Specifies the SNAT rule ID.

Minimum: 36

Maximum: 36

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

Specifies the user token. It is a response to the API used to obtain a user token. This API is the only one that does not require authentication. The value of X-Subject-Token in the response header is the token value.

Minimum: 1

Maximum: 10240

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

snat_rule

Yes

UpdatePrivateSnatOption object

Specifies the request body for updating an SNAT rule.

Table 4 UpdatePrivateSnatOption

Parameter

Mandatory

Type

Description

transit_ip_ids

No

Array of strings

Specifies the ID list of transit IP addresses.

Minimum: 36

Maximum: 36

Array Length: 1 - 1

description

No

String

Provides supplementary information about the SNAT rule. The description can contain up to 255 characters and cannot contain angle brackets (<>).

Minimum: 1

Maximum: 36

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

request_id

String

Specifies the request ID.

Minimum: 36

Maximum: 36

snat_rule

PrivateSnat object

Specifies the response body of the SNAT rule.

Table 6 PrivateSnat

Parameter

Type

Description

id

String

Specifies the SNAT rule ID.

Minimum: 36

Maximum: 36

project_id

String

Specifies the project ID.

Minimum: 36

Maximum: 36

gateway_id

String

Specifies the private NAT gateway ID.

Minimum: 36

Maximum: 36

cidr

String

Specifies the CIDR block that matches the SNAT rule. Constraints:

  • Either this parameter or virsubnet_id must be specified.

  • The CIDR block cannot be the same as that of an existing SNAT rule.

Minimum: 9

Maximum: 18

virsubnet_id

String

Specifies the ID of the subnet that matches the SNAT rule. Constraint: Either this parameter or cidr must be specified.

Minimum: 36

Maximum: 36

description

String

Provides supplementary information about the SNAT rule. The description can contain up to 255 characters and cannot contain angle brackets (<>).

Minimum: 1

Maximum: 36

transit_ip_associations

Array of AssociatedTransitIp objects

Specifies the list of details of associated transit IP addresses.

Array Length: 1 - 1

created_at

String

Specifies when the SNAT rule was created. It is a UTC time in the yyyy-mm-ddThh:mm:ssZ format.

Minimum: 1

Maximum: 36

updated_at

String

Specifies when the SNAT rule was updated. It is a UTC time in the yyyy-mm-ddThh:mm:ssZ format.

Minimum: 1

Maximum: 36

enterprise_project_id

String

Specifies the enterprise project ID.

Minimum: 1

Maximum: 36

Table 7 AssociatedTransitIp

Parameter

Type

Description

transit_ip_id

String

Specifies the ID of the transit IP address.

Minimum: 36

Maximum: 36

transit_ip_address

String

Specifies the transit IP address.

Minimum: 7

Maximum: 35

Example Requests

Updating an SNAT rule (Setting transit_ip_ids to bbe7c2e7-3bad-445b-a067-b30acce66053 and description to my_snat_rule_update)

PUT https://{Endpoint}/v3/cfa563efb77d4b6d9960781d82530fd8/private-nat/snat-rules/af4dbb83-7ca0-4ed1-b28b-668c1f9c6b81

{
  "snat_rule" : {
    "description" : "my_snat_rule_update",
    "transit_ip_ids" : [ "bbe7c2e7-3bad-445b-a067-b30acce66053" ]
  }
}

Example Responses

Status code: 200

SNAT rule updated.

{
  "request_id" : "15bd32b2-1464-4817-b559-444d22499f6c",
  "snat_rule" : {
    "id" : "af4dbb83-7ca0-4ed1-b28b-668c1f9c6b81",
    "project_id" : "cfa563efb77d4b6d9960781d82530fd8",
    "description" : "my_snat_rule_update",
    "gateway_id" : "80da6f26-94eb-4537-97f0-5a56f4d04cfb",
    "cidr" : "10.1.1.64/30",
    "virsubnet_id" : "",
    "transit_ip_associations" : [ {
      "transit_ip_id" : "bbe7c2e7-3bad-445b-a067-b30acce66053",
      "transit_ip_address" : "172.20.1.98"
    } ],
    "created_at" : "2019-10-22T03:31:19",
    "updated_at" : "2019-10-22T03:39:52"
  }
}

Status Codes

Status Code

Description

200

SNAT rule updated.

Error Codes

See Error Codes.