1. Packages
  2. Opentelekomcloud Provider
  3. API Docs
  4. getPrivateNatGatewayV3
opentelekomcloud 1.36.49 published on Thursday, Oct 2, 2025 by opentelekomcloud

opentelekomcloud.getPrivateNatGatewayV3

Explore with Pulumi AI

opentelekomcloud logo
opentelekomcloud 1.36.49 published on Thursday, Oct 2, 2025 by opentelekomcloud

    Up-to-date reference of API arguments for Private NAT gateway you can get at documentation portal

    Manages a V3 Private NAT Gateway data source within OpenTelekomCloud.

    Example Usage

    List all Private NAT gateways

    import * as pulumi from "@pulumi/pulumi";
    import * as opentelekomcloud from "@pulumi/opentelekomcloud";
    
    const gateway1 = opentelekomcloud.getPrivateNatGatewayV3({});
    
    import pulumi
    import pulumi_opentelekomcloud as opentelekomcloud
    
    gateway1 = opentelekomcloud.get_private_nat_gateway_v3()
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/opentelekomcloud/opentelekomcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := opentelekomcloud.LookupPrivateNatGatewayV3(ctx, &opentelekomcloud.LookupPrivateNatGatewayV3Args{}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Opentelekomcloud = Pulumi.Opentelekomcloud;
    
    return await Deployment.RunAsync(() => 
    {
        var gateway1 = Opentelekomcloud.GetPrivateNatGatewayV3.Invoke();
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.opentelekomcloud.OpentelekomcloudFunctions;
    import com.pulumi.opentelekomcloud.inputs.GetPrivateNatGatewayV3Args;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var gateway1 = OpentelekomcloudFunctions.getPrivateNatGatewayV3();
    
        }
    }
    
    variables:
      gateway1:
        fn::invoke:
          function: opentelekomcloud:getPrivateNatGatewayV3
          arguments: {}
    

    Get Private NAT gateway using ID

    import * as pulumi from "@pulumi/pulumi";
    import * as opentelekomcloud from "@pulumi/opentelekomcloud";
    
    const config = new pulumi.Config();
    const gatewayId = config.requireObject("gatewayId");
    const gateway1 = opentelekomcloud.getPrivateNatGatewayV3({
        id: gatewayId,
    });
    
    import pulumi
    import pulumi_opentelekomcloud as opentelekomcloud
    
    config = pulumi.Config()
    gateway_id = config.require_object("gatewayId")
    gateway1 = opentelekomcloud.get_private_nat_gateway_v3(id=gateway_id)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/opentelekomcloud/opentelekomcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		gatewayId := cfg.RequireObject("gatewayId")
    		_, err := opentelekomcloud.LookupPrivateNatGatewayV3(ctx, &opentelekomcloud.LookupPrivateNatGatewayV3Args{
    			Id: pulumi.StringRef(gatewayId),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Opentelekomcloud = Pulumi.Opentelekomcloud;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var gatewayId = config.RequireObject<dynamic>("gatewayId");
        var gateway1 = Opentelekomcloud.GetPrivateNatGatewayV3.Invoke(new()
        {
            Id = gatewayId,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.opentelekomcloud.OpentelekomcloudFunctions;
    import com.pulumi.opentelekomcloud.inputs.GetPrivateNatGatewayV3Args;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var gatewayId = config.get("gatewayId");
            final var gateway1 = OpentelekomcloudFunctions.getPrivateNatGatewayV3(GetPrivateNatGatewayV3Args.builder()
                .id(gatewayId)
                .build());
    
        }
    }
    
    configuration:
      gatewayId:
        type: dynamic
    variables:
      gateway1:
        fn::invoke:
          function: opentelekomcloud:getPrivateNatGatewayV3
          arguments:
            id: ${gatewayId}
    

    Get Private NAT gateway using Name

    import * as pulumi from "@pulumi/pulumi";
    import * as opentelekomcloud from "@pulumi/opentelekomcloud";
    
    const config = new pulumi.Config();
    const gatewayName = config.requireObject("gatewayName");
    const gateway1 = opentelekomcloud.getPrivateNatGatewayV3({
        name: gatewayName,
    });
    
    import pulumi
    import pulumi_opentelekomcloud as opentelekomcloud
    
    config = pulumi.Config()
    gateway_name = config.require_object("gatewayName")
    gateway1 = opentelekomcloud.get_private_nat_gateway_v3(name=gateway_name)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/opentelekomcloud/opentelekomcloud"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cfg := config.New(ctx, "")
    		gatewayName := cfg.RequireObject("gatewayName")
    		_, err := opentelekomcloud.LookupPrivateNatGatewayV3(ctx, &opentelekomcloud.LookupPrivateNatGatewayV3Args{
    			Name: pulumi.StringRef(gatewayName),
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Opentelekomcloud = Pulumi.Opentelekomcloud;
    
    return await Deployment.RunAsync(() => 
    {
        var config = new Config();
        var gatewayName = config.RequireObject<dynamic>("gatewayName");
        var gateway1 = Opentelekomcloud.GetPrivateNatGatewayV3.Invoke(new()
        {
            Name = gatewayName,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.opentelekomcloud.OpentelekomcloudFunctions;
    import com.pulumi.opentelekomcloud.inputs.GetPrivateNatGatewayV3Args;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var config = ctx.config();
            final var gatewayName = config.get("gatewayName");
            final var gateway1 = OpentelekomcloudFunctions.getPrivateNatGatewayV3(GetPrivateNatGatewayV3Args.builder()
                .name(gatewayName)
                .build());
    
        }
    }
    
    configuration:
      gatewayName:
        type: dynamic
    variables:
      gateway1:
        fn::invoke:
          function: opentelekomcloud:getPrivateNatGatewayV3
          arguments:
            name: ${gatewayName}
    

    Using getPrivateNatGatewayV3

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getPrivateNatGatewayV3(args: GetPrivateNatGatewayV3Args, opts?: InvokeOptions): Promise<GetPrivateNatGatewayV3Result>
    function getPrivateNatGatewayV3Output(args: GetPrivateNatGatewayV3OutputArgs, opts?: InvokeOptions): Output<GetPrivateNatGatewayV3Result>
    def get_private_nat_gateway_v3(id: Optional[str] = None,
                                   name: Optional[str] = None,
                                   opts: Optional[InvokeOptions] = None) -> GetPrivateNatGatewayV3Result
    def get_private_nat_gateway_v3_output(id: Optional[pulumi.Input[str]] = None,
                                   name: Optional[pulumi.Input[str]] = None,
                                   opts: Optional[InvokeOptions] = None) -> Output[GetPrivateNatGatewayV3Result]
    func LookupPrivateNatGatewayV3(ctx *Context, args *LookupPrivateNatGatewayV3Args, opts ...InvokeOption) (*LookupPrivateNatGatewayV3Result, error)
    func LookupPrivateNatGatewayV3Output(ctx *Context, args *LookupPrivateNatGatewayV3OutputArgs, opts ...InvokeOption) LookupPrivateNatGatewayV3ResultOutput

    > Note: This function is named LookupPrivateNatGatewayV3 in the Go SDK.

    public static class GetPrivateNatGatewayV3 
    {
        public static Task<GetPrivateNatGatewayV3Result> InvokeAsync(GetPrivateNatGatewayV3Args args, InvokeOptions? opts = null)
        public static Output<GetPrivateNatGatewayV3Result> Invoke(GetPrivateNatGatewayV3InvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetPrivateNatGatewayV3Result> getPrivateNatGatewayV3(GetPrivateNatGatewayV3Args args, InvokeOptions options)
    public static Output<GetPrivateNatGatewayV3Result> getPrivateNatGatewayV3(GetPrivateNatGatewayV3Args args, InvokeOptions options)
    
    fn::invoke:
      function: opentelekomcloud:index/getPrivateNatGatewayV3:getPrivateNatGatewayV3
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Id string
    Specifies the private NAT gateway name.
    Name string
    Specifies the private NAT gateway name.
    Id string
    Specifies the private NAT gateway name.
    Name string
    Specifies the private NAT gateway name.
    id String
    Specifies the private NAT gateway name.
    name String
    Specifies the private NAT gateway name.
    id string
    Specifies the private NAT gateway name.
    name string
    Specifies the private NAT gateway name.
    id str
    Specifies the private NAT gateway name.
    name str
    Specifies the private NAT gateway name.
    id String
    Specifies the private NAT gateway name.
    name String
    Specifies the private NAT gateway name.

    getPrivateNatGatewayV3 Result

    The following output properties are available:

    Gateways List<GetPrivateNatGatewayV3Gateway>
    Indicates the private NAT gateways. The structure is defined below.
    Id string
    Private NAT gateway ID.
    Name string
    Indicates the private NAT gateway name.
    Gateways []GetPrivateNatGatewayV3Gateway
    Indicates the private NAT gateways. The structure is defined below.
    Id string
    Private NAT gateway ID.
    Name string
    Indicates the private NAT gateway name.
    gateways List<GetPrivateNatGatewayV3Gateway>
    Indicates the private NAT gateways. The structure is defined below.
    id String
    Private NAT gateway ID.
    name String
    Indicates the private NAT gateway name.
    gateways GetPrivateNatGatewayV3Gateway[]
    Indicates the private NAT gateways. The structure is defined below.
    id string
    Private NAT gateway ID.
    name string
    Indicates the private NAT gateway name.
    gateways Sequence[GetPrivateNatGatewayV3Gateway]
    Indicates the private NAT gateways. The structure is defined below.
    id str
    Private NAT gateway ID.
    name str
    Indicates the private NAT gateway name.
    gateways List<Property Map>
    Indicates the private NAT gateways. The structure is defined below.
    id String
    Private NAT gateway ID.
    name String
    Indicates the private NAT gateway name.

    Supporting Types

    GetPrivateNatGatewayV3Gateway

    CreatedAt string
    Indicates the time when the private NAT gateway was created. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    Description string
    Provides supplementary information about the private NAT gateway.
    DownlinkVpcs List<GetPrivateNatGatewayV3GatewayDownlinkVpc>
    Indicates the VPC where the private NAT gateway works. The structure is documented below.
    EnterpriseProjectId string
    Indicates the ID of the enterprise project that is associated with the private NAT gateway when the private NAT gateway is created.
    Id string
    Specifies the private NAT gateway name.
    Name string
    Specifies the private NAT gateway name.
    ProjectId string
    Indicates the project ID.
    RuleMax double
    Indicates Specifies the maximum number of rules. Value range: 0-65535
    Spec string
    Indicates the private NAT gateway specifications. The value can be: Small, Medium, Large, Extra-large.
    Status string
    Indicates the private NAT gateway status. The value can be: ACTIVE (The private NAT gateway is running properly) or FROZEN (The private NAT gateway is frozen).
    Tags Dictionary<string, string>
    Indicates the tag list in key/value format.
    TransitIpPoolSizeMax double
    Specifies the maximum number of transit IP addresses in a transit IP address pool. Value range: 0-100
    UpdatedAt string
    Indicates the time when the private NAT gateway was updated. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    CreatedAt string
    Indicates the time when the private NAT gateway was created. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    Description string
    Provides supplementary information about the private NAT gateway.
    DownlinkVpcs []GetPrivateNatGatewayV3GatewayDownlinkVpc
    Indicates the VPC where the private NAT gateway works. The structure is documented below.
    EnterpriseProjectId string
    Indicates the ID of the enterprise project that is associated with the private NAT gateway when the private NAT gateway is created.
    Id string
    Specifies the private NAT gateway name.
    Name string
    Specifies the private NAT gateway name.
    ProjectId string
    Indicates the project ID.
    RuleMax float64
    Indicates Specifies the maximum number of rules. Value range: 0-65535
    Spec string
    Indicates the private NAT gateway specifications. The value can be: Small, Medium, Large, Extra-large.
    Status string
    Indicates the private NAT gateway status. The value can be: ACTIVE (The private NAT gateway is running properly) or FROZEN (The private NAT gateway is frozen).
    Tags map[string]string
    Indicates the tag list in key/value format.
    TransitIpPoolSizeMax float64
    Specifies the maximum number of transit IP addresses in a transit IP address pool. Value range: 0-100
    UpdatedAt string
    Indicates the time when the private NAT gateway was updated. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    createdAt String
    Indicates the time when the private NAT gateway was created. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    description String
    Provides supplementary information about the private NAT gateway.
    downlinkVpcs List<GetPrivateNatGatewayV3GatewayDownlinkVpc>
    Indicates the VPC where the private NAT gateway works. The structure is documented below.
    enterpriseProjectId String
    Indicates the ID of the enterprise project that is associated with the private NAT gateway when the private NAT gateway is created.
    id String
    Specifies the private NAT gateway name.
    name String
    Specifies the private NAT gateway name.
    projectId String
    Indicates the project ID.
    ruleMax Double
    Indicates Specifies the maximum number of rules. Value range: 0-65535
    spec String
    Indicates the private NAT gateway specifications. The value can be: Small, Medium, Large, Extra-large.
    status String
    Indicates the private NAT gateway status. The value can be: ACTIVE (The private NAT gateway is running properly) or FROZEN (The private NAT gateway is frozen).
    tags Map<String,String>
    Indicates the tag list in key/value format.
    transitIpPoolSizeMax Double
    Specifies the maximum number of transit IP addresses in a transit IP address pool. Value range: 0-100
    updatedAt String
    Indicates the time when the private NAT gateway was updated. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    createdAt string
    Indicates the time when the private NAT gateway was created. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    description string
    Provides supplementary information about the private NAT gateway.
    downlinkVpcs GetPrivateNatGatewayV3GatewayDownlinkVpc[]
    Indicates the VPC where the private NAT gateway works. The structure is documented below.
    enterpriseProjectId string
    Indicates the ID of the enterprise project that is associated with the private NAT gateway when the private NAT gateway is created.
    id string
    Specifies the private NAT gateway name.
    name string
    Specifies the private NAT gateway name.
    projectId string
    Indicates the project ID.
    ruleMax number
    Indicates Specifies the maximum number of rules. Value range: 0-65535
    spec string
    Indicates the private NAT gateway specifications. The value can be: Small, Medium, Large, Extra-large.
    status string
    Indicates the private NAT gateway status. The value can be: ACTIVE (The private NAT gateway is running properly) or FROZEN (The private NAT gateway is frozen).
    tags {[key: string]: string}
    Indicates the tag list in key/value format.
    transitIpPoolSizeMax number
    Specifies the maximum number of transit IP addresses in a transit IP address pool. Value range: 0-100
    updatedAt string
    Indicates the time when the private NAT gateway was updated. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    created_at str
    Indicates the time when the private NAT gateway was created. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    description str
    Provides supplementary information about the private NAT gateway.
    downlink_vpcs Sequence[GetPrivateNatGatewayV3GatewayDownlinkVpc]
    Indicates the VPC where the private NAT gateway works. The structure is documented below.
    enterprise_project_id str
    Indicates the ID of the enterprise project that is associated with the private NAT gateway when the private NAT gateway is created.
    id str
    Specifies the private NAT gateway name.
    name str
    Specifies the private NAT gateway name.
    project_id str
    Indicates the project ID.
    rule_max float
    Indicates Specifies the maximum number of rules. Value range: 0-65535
    spec str
    Indicates the private NAT gateway specifications. The value can be: Small, Medium, Large, Extra-large.
    status str
    Indicates the private NAT gateway status. The value can be: ACTIVE (The private NAT gateway is running properly) or FROZEN (The private NAT gateway is frozen).
    tags Mapping[str, str]
    Indicates the tag list in key/value format.
    transit_ip_pool_size_max float
    Specifies the maximum number of transit IP addresses in a transit IP address pool. Value range: 0-100
    updated_at str
    Indicates the time when the private NAT gateway was updated. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    createdAt String
    Indicates the time when the private NAT gateway was created. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.
    description String
    Provides supplementary information about the private NAT gateway.
    downlinkVpcs List<Property Map>
    Indicates the VPC where the private NAT gateway works. The structure is documented below.
    enterpriseProjectId String
    Indicates the ID of the enterprise project that is associated with the private NAT gateway when the private NAT gateway is created.
    id String
    Specifies the private NAT gateway name.
    name String
    Specifies the private NAT gateway name.
    projectId String
    Indicates the project ID.
    ruleMax Number
    Indicates Specifies the maximum number of rules. Value range: 0-65535
    spec String
    Indicates the private NAT gateway specifications. The value can be: Small, Medium, Large, Extra-large.
    status String
    Indicates the private NAT gateway status. The value can be: ACTIVE (The private NAT gateway is running properly) or FROZEN (The private NAT gateway is frozen).
    tags Map<String>
    Indicates the tag list in key/value format.
    transitIpPoolSizeMax Number
    Specifies the maximum number of transit IP addresses in a transit IP address pool. Value range: 0-100
    updatedAt String
    Indicates the time when the private NAT gateway was updated. It is a UTC time in yyyy-mm-ddThh:mm:ssZ format.

    GetPrivateNatGatewayV3GatewayDownlinkVpc

    NgportIpAddress string
    Indicates the private IP address of the private NAT gateway.
    VirsubnetId string
    Indicates the ID of the subnet where the private NAT gateway works.
    VpcId string
    Indicates the ID of the VPC where the private NAT gateway works.
    NgportIpAddress string
    Indicates the private IP address of the private NAT gateway.
    VirsubnetId string
    Indicates the ID of the subnet where the private NAT gateway works.
    VpcId string
    Indicates the ID of the VPC where the private NAT gateway works.
    ngportIpAddress String
    Indicates the private IP address of the private NAT gateway.
    virsubnetId String
    Indicates the ID of the subnet where the private NAT gateway works.
    vpcId String
    Indicates the ID of the VPC where the private NAT gateway works.
    ngportIpAddress string
    Indicates the private IP address of the private NAT gateway.
    virsubnetId string
    Indicates the ID of the subnet where the private NAT gateway works.
    vpcId string
    Indicates the ID of the VPC where the private NAT gateway works.
    ngport_ip_address str
    Indicates the private IP address of the private NAT gateway.
    virsubnet_id str
    Indicates the ID of the subnet where the private NAT gateway works.
    vpc_id str
    Indicates the ID of the VPC where the private NAT gateway works.
    ngportIpAddress String
    Indicates the private IP address of the private NAT gateway.
    virsubnetId String
    Indicates the ID of the subnet where the private NAT gateway works.
    vpcId String
    Indicates the ID of the VPC where the private NAT gateway works.

    Package Details

    Repository
    opentelekomcloud opentelekomcloud/terraform-provider-opentelekomcloud
    License
    Notes
    This Pulumi package is based on the opentelekomcloud Terraform Provider.
    opentelekomcloud logo
    opentelekomcloud 1.36.49 published on Thursday, Oct 2, 2025 by opentelekomcloud
      AI Agentic Workflows: Register now