Updated on 2026-02-10 GMT+08:00

Querying NAT Gateways

Function

Queries NAT gateways.

Debugging

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

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 role/policy-based authorization, see Permissions Policies and Supported Actions for details on 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

    Dependencies

    workspace:networks:ListNatGateways

    List

    -

    -

    -

    • vpc:subnets:get
    • vpc:vpcs:get
    • nat:snatRules:list
    • nat:natGateways:list

URI

GET /v2/{project_id}/nat-gateways

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

id

No

String

Public NAT gateway ID.

enterprise_project_id

No

String

Enterprise project ID, which is associated with the public NAT gateway when the gateway is created.

description

No

String

Public NAT gateway description, which contains up to 255 characters.

created_at

No

String

Creation time of the public NAT gateway. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.

name

No

String

Public NAT gateway name, which contains up to 64 characters in digits, letters, underscores (_), and hyphens (-).

status

No

Array of strings

Public NAT gateway status.

Options:

ACTIVE

PENDING_CREATE

PENDING_UPDATE

PENDING_DELETE

INACTIVE

spec

No

Array of strings

Public NAT gateway specifications. Options: 1: small type, which supports up to 10,000 SNAT connections. 2: medium type, which supports up to 50,000 SNAT connections. 3: large type, which supports up to 200,000 SNAT connections. 4: extra-large type, which supports up to 1 million SNAT connections.

router_id

No

String

VPC ID.

limit

No

Integer

Specifies the number of records displayed on each page. The value ranges from 1 to 2,000. Default value: 2,000.

offset

No

Integer

Offset. The default value is 0.

Request Parameters

None

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

nat_gateways

Array of NatGateway objects

Gateway instance information list.

Table 4 NatGateway

Parameter

Type

Description

id

String

Gateway instance ID.

tenant_id

String

Project ID.

name

String

Public NAT gateway name, which contains up to 64 characters.

description

String

Public NAT gateway description, which contains up to 255 characters.

spec

String

Public NAT gateway specifications. Options: 1: small type, which supports up to 10,000 SNAT connections. 2: medium type, which supports up to 50,000 SNAT connections. 3: large type, which supports up to 200,000 SNAT connections. 4: extra-large type, which supports up to 1 million SNAT connections.

status

String

Public NAT gateway status.

Options:

ACTIVE

PENDING_CREATE

PENDING_UPDATE

PENDING_DELETE

INACTIVE

admin_state_up

String

Public NAT gateway name, which contains up to 64 characters.

Whether the NAT gateway is frozen. Options:

true: unfrozen

false: frozen

created_at

String

Creation time of the public NAT gateway. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.

router_id

String

VPC ID.

internal_network_id

String

Network ID of the downstream interface (the next hop of DVR) of the public NAT gateway. DVR is Distributed Virtual Routing.

enterprise_project_id

String

Enterprise project ID, which is associated with the public NAT gateway when the gateway is created.

Status code: 401

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 403

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 404

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Status code: 500

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code, which is returned upon failure.

error_msg

String

Error message.

error_detail

String

Error details.

encoded_authorization_message

String

Encrypted detailed reason for rejection. You can call the API decode-authorization-message of STS to decrypt the reason.

Example Requests

None

Example Responses

Status code: 200

Verification result.

{
  "nat_gateways" : [ {
    "id" : "string",
    "tenant_id" : "string",
    "name" : "string",
    "description" : "string",
    "spec" : "string",
    "status" : "string",
    "admin_state_up" : "string",
    "created_at" : "string",
    "router_id" : "string",
    "internal_network_id" : "string",
    "enterprise_project_id" : "string"
  } ]
}

Status Codes

Status Code

Description

200

Verification result.

401

Authentication failed.

403

No operation permissions.

404

No resources found.

500

An internal service error occurred. For details about the error code, see the error code description.

Error Codes

See Error Codes.