1. Packages
  2. Strata Cloud Manager Provider
  3. API Docs
  4. getNatRuleList
Strata Cloud Manager v0.4.3 published on Saturday, Nov 8, 2025 by Pulumi
scm logo
Strata Cloud Manager v0.4.3 published on Saturday, Nov 8, 2025 by Pulumi

    Retrieves a listing of config items.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as scm from "@pulumi/scm";
    
    // Define a data source for listing NAT rules
    const pagedNatRulesList = scm.getNatRuleList({
        folder: "All",
        limit: 10,
        offset: 10,
        position: "pre",
    });
    export const fetchedNATRuleListSummary = {
        totalRulesInList: pagedNatRulesList.then(pagedNatRulesList => pagedNatRulesList.total),
        allRules: pagedNatRulesList.then(pagedNatRulesList => pagedNatRulesList.datas),
    };
    
    import pulumi
    import pulumi_scm as scm
    
    # Define a data source for listing NAT rules
    paged_nat_rules_list = scm.get_nat_rule_list(folder="All",
        limit=10,
        offset=10,
        position="pre")
    pulumi.export("fetchedNATRuleListSummary", {
        "totalRulesInList": paged_nat_rules_list.total,
        "allRules": paged_nat_rules_list.datas,
    })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-scm/sdk/go/scm"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Define a data source for listing NAT rules
    		pagedNatRulesList, err := scm.GetNatRuleList(ctx, &scm.GetNatRuleListArgs{
    			Folder:   pulumi.StringRef("All"),
    			Limit:    pulumi.IntRef(10),
    			Offset:   pulumi.IntRef(10),
    			Position: "pre",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("fetchedNATRuleListSummary", pulumi.Map{
    			"totalRulesInList": pagedNatRulesList.Total,
    			"allRules":         pagedNatRulesList.Datas,
    		})
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Scm = Pulumi.Scm;
    
    return await Deployment.RunAsync(() => 
    {
        // Define a data source for listing NAT rules
        var pagedNatRulesList = Scm.GetNatRuleList.Invoke(new()
        {
            Folder = "All",
            Limit = 10,
            Offset = 10,
            Position = "pre",
        });
    
        return new Dictionary<string, object?>
        {
            ["fetchedNATRuleListSummary"] = 
            {
                { "totalRulesInList", pagedNatRulesList.Apply(getNatRuleListResult => getNatRuleListResult.Total) },
                { "allRules", pagedNatRulesList.Apply(getNatRuleListResult => getNatRuleListResult.Datas) },
            },
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.scm.ScmFunctions;
    import com.pulumi.scm.inputs.GetNatRuleListArgs;
    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) {
            // Define a data source for listing NAT rules
            final var pagedNatRulesList = ScmFunctions.getNatRuleList(GetNatRuleListArgs.builder()
                .folder("All")
                .limit(10)
                .offset(10)
                .position("pre")
                .build());
    
            ctx.export("fetchedNATRuleListSummary", Map.ofEntries(
                Map.entry("totalRulesInList", pagedNatRulesList.total()),
                Map.entry("allRules", pagedNatRulesList.datas())
            ));
        }
    }
    
    variables:
      # Define a data source for listing NAT rules
      pagedNatRulesList:
        fn::invoke:
          function: scm:getNatRuleList
          arguments:
            folder: All
            limit: 10
            offset: 10
            position: pre
    outputs:
      # --- Output Block to Print Retrieved Data ---
      fetchedNATRuleListSummary:
        totalRulesInList: ${pagedNatRulesList.total}
        allRules: ${pagedNatRulesList.datas}
    

    Using getNatRuleList

    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 getNatRuleList(args: GetNatRuleListArgs, opts?: InvokeOptions): Promise<GetNatRuleListResult>
    function getNatRuleListOutput(args: GetNatRuleListOutputArgs, opts?: InvokeOptions): Output<GetNatRuleListResult>
    def get_nat_rule_list(device: Optional[str] = None,
                          folder: Optional[str] = None,
                          limit: Optional[int] = None,
                          name: Optional[str] = None,
                          offset: Optional[int] = None,
                          position: Optional[str] = None,
                          snippet: Optional[str] = None,
                          opts: Optional[InvokeOptions] = None) -> GetNatRuleListResult
    def get_nat_rule_list_output(device: Optional[pulumi.Input[str]] = None,
                          folder: Optional[pulumi.Input[str]] = None,
                          limit: Optional[pulumi.Input[int]] = None,
                          name: Optional[pulumi.Input[str]] = None,
                          offset: Optional[pulumi.Input[int]] = None,
                          position: Optional[pulumi.Input[str]] = None,
                          snippet: Optional[pulumi.Input[str]] = None,
                          opts: Optional[InvokeOptions] = None) -> Output[GetNatRuleListResult]
    func GetNatRuleList(ctx *Context, args *GetNatRuleListArgs, opts ...InvokeOption) (*GetNatRuleListResult, error)
    func GetNatRuleListOutput(ctx *Context, args *GetNatRuleListOutputArgs, opts ...InvokeOption) GetNatRuleListResultOutput

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

    public static class GetNatRuleList 
    {
        public static Task<GetNatRuleListResult> InvokeAsync(GetNatRuleListArgs args, InvokeOptions? opts = null)
        public static Output<GetNatRuleListResult> Invoke(GetNatRuleListInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetNatRuleListResult> getNatRuleList(GetNatRuleListArgs args, InvokeOptions options)
    public static Output<GetNatRuleListResult> getNatRuleList(GetNatRuleListArgs args, InvokeOptions options)
    
    fn::invoke:
      function: scm:index/getNatRuleList:getNatRuleList
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Position string
    The relative position of the rule
    Device string
    The device of the item.
    Folder string
    The folder of the item. Default: Shared.
    Limit int
    The max number of items to return. Default: 200.
    Name string
    The name of the item.
    Offset int
    The offset of the first item to return.
    Snippet string
    The snippet of the item.
    Position string
    The relative position of the rule
    Device string
    The device of the item.
    Folder string
    The folder of the item. Default: Shared.
    Limit int
    The max number of items to return. Default: 200.
    Name string
    The name of the item.
    Offset int
    The offset of the first item to return.
    Snippet string
    The snippet of the item.
    position String
    The relative position of the rule
    device String
    The device of the item.
    folder String
    The folder of the item. Default: Shared.
    limit Integer
    The max number of items to return. Default: 200.
    name String
    The name of the item.
    offset Integer
    The offset of the first item to return.
    snippet String
    The snippet of the item.
    position string
    The relative position of the rule
    device string
    The device of the item.
    folder string
    The folder of the item. Default: Shared.
    limit number
    The max number of items to return. Default: 200.
    name string
    The name of the item.
    offset number
    The offset of the first item to return.
    snippet string
    The snippet of the item.
    position str
    The relative position of the rule
    device str
    The device of the item.
    folder str
    The folder of the item. Default: Shared.
    limit int
    The max number of items to return. Default: 200.
    name str
    The name of the item.
    offset int
    The offset of the first item to return.
    snippet str
    The snippet of the item.
    position String
    The relative position of the rule
    device String
    The device of the item.
    folder String
    The folder of the item. Default: Shared.
    limit Number
    The max number of items to return. Default: 200.
    name String
    The name of the item.
    offset Number
    The offset of the first item to return.
    snippet String
    The snippet of the item.

    getNatRuleList Result

    The following output properties are available:

    Datas List<GetNatRuleListData>
    The data.
    Id string
    The provider-assigned unique ID for this managed resource.
    Position string
    The relative position of the rule
    Tfid string
    Total int
    The total number of items.
    Device string
    The device of the item.
    Folder string
    The folder of the item. Default: Shared.
    Limit int
    The max number of items to return. Default: 200.
    Name string
    The name of the item.
    Offset int
    The offset of the first item to return.
    Snippet string
    The snippet of the item.
    Datas []GetNatRuleListData
    The data.
    Id string
    The provider-assigned unique ID for this managed resource.
    Position string
    The relative position of the rule
    Tfid string
    Total int
    The total number of items.
    Device string
    The device of the item.
    Folder string
    The folder of the item. Default: Shared.
    Limit int
    The max number of items to return. Default: 200.
    Name string
    The name of the item.
    Offset int
    The offset of the first item to return.
    Snippet string
    The snippet of the item.
    datas List<GetNatRuleListData>
    The data.
    id String
    The provider-assigned unique ID for this managed resource.
    position String
    The relative position of the rule
    tfid String
    total Integer
    The total number of items.
    device String
    The device of the item.
    folder String
    The folder of the item. Default: Shared.
    limit Integer
    The max number of items to return. Default: 200.
    name String
    The name of the item.
    offset Integer
    The offset of the first item to return.
    snippet String
    The snippet of the item.
    datas GetNatRuleListData[]
    The data.
    id string
    The provider-assigned unique ID for this managed resource.
    position string
    The relative position of the rule
    tfid string
    total number
    The total number of items.
    device string
    The device of the item.
    folder string
    The folder of the item. Default: Shared.
    limit number
    The max number of items to return. Default: 200.
    name string
    The name of the item.
    offset number
    The offset of the first item to return.
    snippet string
    The snippet of the item.
    datas Sequence[GetNatRuleListData]
    The data.
    id str
    The provider-assigned unique ID for this managed resource.
    position str
    The relative position of the rule
    tfid str
    total int
    The total number of items.
    device str
    The device of the item.
    folder str
    The folder of the item. Default: Shared.
    limit int
    The max number of items to return. Default: 200.
    name str
    The name of the item.
    offset int
    The offset of the first item to return.
    snippet str
    The snippet of the item.
    datas List<Property Map>
    The data.
    id String
    The provider-assigned unique ID for this managed resource.
    position String
    The relative position of the rule
    tfid String
    total Number
    The total number of items.
    device String
    The device of the item.
    folder String
    The folder of the item. Default: Shared.
    limit Number
    The max number of items to return. Default: 200.
    name String
    The name of the item.
    offset Number
    The offset of the first item to return.
    snippet String
    The snippet of the item.

    Supporting Types

    GetNatRuleListData

    ActiveActiveDeviceBinding string
    Active active device binding
    Description string
    NAT rule description
    DestinationTranslation GetNatRuleListDataDestinationTranslation
    Destination translation
    Destinations List<string>
    Destination address(es) of the original packet
    Device string
    The device in which the resource is defined
    Disabled bool
    Disable NAT rule?
    DynamicDestinationTranslation GetNatRuleListDataDynamicDestinationTranslation
    Dynamic destination translation
    Folder string
    The folder in which the resource is defined
    Froms List<string>
    Source zone(s) of the original packet
    Id string
    UUID of the resource
    Name string
    NAT rule name
    NatType string
    NAT type
    Position string
    The relative position of the rule
    Service string
    The service of the original packet
    Snippet string
    The snippet in which the resource is defined
    SourceTranslation GetNatRuleListDataSourceTranslation
    Source translation
    Sources List<string>
    Source address(es) of the original packet
    Tags List<string>
    NAT rule tags
    Tfid string
    ToInterface string
    Destination interface of the original packet
    Tos List<string>
    Destination zone of the original packet
    ActiveActiveDeviceBinding string
    Active active device binding
    Description string
    NAT rule description
    DestinationTranslation GetNatRuleListDataDestinationTranslation
    Destination translation
    Destinations []string
    Destination address(es) of the original packet
    Device string
    The device in which the resource is defined
    Disabled bool
    Disable NAT rule?
    DynamicDestinationTranslation GetNatRuleListDataDynamicDestinationTranslation
    Dynamic destination translation
    Folder string
    The folder in which the resource is defined
    Froms []string
    Source zone(s) of the original packet
    Id string
    UUID of the resource
    Name string
    NAT rule name
    NatType string
    NAT type
    Position string
    The relative position of the rule
    Service string
    The service of the original packet
    Snippet string
    The snippet in which the resource is defined
    SourceTranslation GetNatRuleListDataSourceTranslation
    Source translation
    Sources []string
    Source address(es) of the original packet
    Tags []string
    NAT rule tags
    Tfid string
    ToInterface string
    Destination interface of the original packet
    Tos []string
    Destination zone of the original packet
    activeActiveDeviceBinding String
    Active active device binding
    description String
    NAT rule description
    destinationTranslation GetNatRuleListDataDestinationTranslation
    Destination translation
    destinations List<String>
    Destination address(es) of the original packet
    device String
    The device in which the resource is defined
    disabled Boolean
    Disable NAT rule?
    dynamicDestinationTranslation GetNatRuleListDataDynamicDestinationTranslation
    Dynamic destination translation
    folder String
    The folder in which the resource is defined
    froms List<String>
    Source zone(s) of the original packet
    id String
    UUID of the resource
    name String
    NAT rule name
    natType String
    NAT type
    position String
    The relative position of the rule
    service String
    The service of the original packet
    snippet String
    The snippet in which the resource is defined
    sourceTranslation GetNatRuleListDataSourceTranslation
    Source translation
    sources List<String>
    Source address(es) of the original packet
    tags List<String>
    NAT rule tags
    tfid String
    toInterface String
    Destination interface of the original packet
    tos List<String>
    Destination zone of the original packet
    activeActiveDeviceBinding string
    Active active device binding
    description string
    NAT rule description
    destinationTranslation GetNatRuleListDataDestinationTranslation
    Destination translation
    destinations string[]
    Destination address(es) of the original packet
    device string
    The device in which the resource is defined
    disabled boolean
    Disable NAT rule?
    dynamicDestinationTranslation GetNatRuleListDataDynamicDestinationTranslation
    Dynamic destination translation
    folder string
    The folder in which the resource is defined
    froms string[]
    Source zone(s) of the original packet
    id string
    UUID of the resource
    name string
    NAT rule name
    natType string
    NAT type
    position string
    The relative position of the rule
    service string
    The service of the original packet
    snippet string
    The snippet in which the resource is defined
    sourceTranslation GetNatRuleListDataSourceTranslation
    Source translation
    sources string[]
    Source address(es) of the original packet
    tags string[]
    NAT rule tags
    tfid string
    toInterface string
    Destination interface of the original packet
    tos string[]
    Destination zone of the original packet
    active_active_device_binding str
    Active active device binding
    description str
    NAT rule description
    destination_translation GetNatRuleListDataDestinationTranslation
    Destination translation
    destinations Sequence[str]
    Destination address(es) of the original packet
    device str
    The device in which the resource is defined
    disabled bool
    Disable NAT rule?
    dynamic_destination_translation GetNatRuleListDataDynamicDestinationTranslation
    Dynamic destination translation
    folder str
    The folder in which the resource is defined
    froms Sequence[str]
    Source zone(s) of the original packet
    id str
    UUID of the resource
    name str
    NAT rule name
    nat_type str
    NAT type
    position str
    The relative position of the rule
    service str
    The service of the original packet
    snippet str
    The snippet in which the resource is defined
    source_translation GetNatRuleListDataSourceTranslation
    Source translation
    sources Sequence[str]
    Source address(es) of the original packet
    tags Sequence[str]
    NAT rule tags
    tfid str
    to_interface str
    Destination interface of the original packet
    tos Sequence[str]
    Destination zone of the original packet
    activeActiveDeviceBinding String
    Active active device binding
    description String
    NAT rule description
    destinationTranslation Property Map
    Destination translation
    destinations List<String>
    Destination address(es) of the original packet
    device String
    The device in which the resource is defined
    disabled Boolean
    Disable NAT rule?
    dynamicDestinationTranslation Property Map
    Dynamic destination translation
    folder String
    The folder in which the resource is defined
    froms List<String>
    Source zone(s) of the original packet
    id String
    UUID of the resource
    name String
    NAT rule name
    natType String
    NAT type
    position String
    The relative position of the rule
    service String
    The service of the original packet
    snippet String
    The snippet in which the resource is defined
    sourceTranslation Property Map
    Source translation
    sources List<String>
    Source address(es) of the original packet
    tags List<String>
    NAT rule tags
    tfid String
    toInterface String
    Destination interface of the original packet
    tos List<String>
    Destination zone of the original packet

    GetNatRuleListDataDestinationTranslation

    DnsRewrite GetNatRuleListDataDestinationTranslationDnsRewrite
    DNS rewrite
    TranslatedAddress string
    Translated destination IP address
    TranslatedPort int
    Translated destination port
    DnsRewrite GetNatRuleListDataDestinationTranslationDnsRewrite
    DNS rewrite
    TranslatedAddress string
    Translated destination IP address
    TranslatedPort int
    Translated destination port
    dnsRewrite GetNatRuleListDataDestinationTranslationDnsRewrite
    DNS rewrite
    translatedAddress String
    Translated destination IP address
    translatedPort Integer
    Translated destination port
    dnsRewrite GetNatRuleListDataDestinationTranslationDnsRewrite
    DNS rewrite
    translatedAddress string
    Translated destination IP address
    translatedPort number
    Translated destination port
    dns_rewrite GetNatRuleListDataDestinationTranslationDnsRewrite
    DNS rewrite
    translated_address str
    Translated destination IP address
    translated_port int
    Translated destination port
    dnsRewrite Property Map
    DNS rewrite
    translatedAddress String
    Translated destination IP address
    translatedPort Number
    Translated destination port

    GetNatRuleListDataDestinationTranslationDnsRewrite

    Direction string
    Direction
    Direction string
    Direction
    direction String
    Direction
    direction string
    Direction
    direction str
    Direction
    direction String
    Direction

    GetNatRuleListDataDynamicDestinationTranslation

    Distribution string
    Distribution method
    TranslatedAddress string
    Translated destination IP address
    TranslatedPort int
    Translated destination port
    Distribution string
    Distribution method
    TranslatedAddress string
    Translated destination IP address
    TranslatedPort int
    Translated destination port
    distribution String
    Distribution method
    translatedAddress String
    Translated destination IP address
    translatedPort Integer
    Translated destination port
    distribution string
    Distribution method
    translatedAddress string
    Translated destination IP address
    translatedPort number
    Translated destination port
    distribution str
    Distribution method
    translated_address str
    Translated destination IP address
    translated_port int
    Translated destination port
    distribution String
    Distribution method
    translatedAddress String
    Translated destination IP address
    translatedPort Number
    Translated destination port

    GetNatRuleListDataSourceTranslation

    GetNatRuleListDataSourceTranslationDynamicIp

    fallback Property Map
    Fallback
    translatedAddresses List<String>
    Translated IP addresses

    GetNatRuleListDataSourceTranslationDynamicIpAndPort

    InterfaceAddress GetNatRuleListDataSourceTranslationDynamicIpAndPortInterfaceAddress
    Translated source interface
    TranslatedAddresses List<string>
    Translated source IP addresses
    interfaceAddress GetNatRuleListDataSourceTranslationDynamicIpAndPortInterfaceAddress
    Translated source interface
    translatedAddresses List<String>
    Translated source IP addresses
    interface_address GetNatRuleListDataSourceTranslationDynamicIpAndPortInterfaceAddress
    Translated source interface
    translated_addresses Sequence[str]
    Translated source IP addresses
    interfaceAddress Property Map
    Translated source interface
    translatedAddresses List<String>
    Translated source IP addresses

    GetNatRuleListDataSourceTranslationDynamicIpAndPortInterfaceAddress

    FloatingIp string
    Floating IP address
    Interface string
    Interface name
    Ip string
    Translated source IP address
    FloatingIp string
    Floating IP address
    Interface string
    Interface name
    Ip string
    Translated source IP address
    floatingIp String
    Floating IP address
    interface_ String
    Interface name
    ip String
    Translated source IP address
    floatingIp string
    Floating IP address
    interface string
    Interface name
    ip string
    Translated source IP address
    floating_ip str
    Floating IP address
    interface str
    Interface name
    ip str
    Translated source IP address
    floatingIp String
    Floating IP address
    interface String
    Interface name
    ip String
    Translated source IP address

    GetNatRuleListDataSourceTranslationDynamicIpFallback

    interfaceAddress Property Map
    Fallback interface
    translatedAddresses List<String>
    Fallback IP addresses

    GetNatRuleListDataSourceTranslationDynamicIpFallbackInterfaceAddress

    FloatingIp string
    Floating IP address
    Interface string
    Interface name
    Ip string
    IP address
    FloatingIp string
    Floating IP address
    Interface string
    Interface name
    Ip string
    IP address
    floatingIp String
    Floating IP address
    interface_ String
    Interface name
    ip String
    IP address
    floatingIp string
    Floating IP address
    interface string
    Interface name
    ip string
    IP address
    floating_ip str
    Floating IP address
    interface str
    Interface name
    ip str
    IP address
    floatingIp String
    Floating IP address
    interface String
    Interface name
    ip String
    IP address

    GetNatRuleListDataSourceTranslationStaticIp

    BiDirectional string
    Bi directional
    TranslatedAddress string
    Translated IP address
    BiDirectional string
    Bi directional
    TranslatedAddress string
    Translated IP address
    biDirectional String
    Bi directional
    translatedAddress String
    Translated IP address
    biDirectional string
    Bi directional
    translatedAddress string
    Translated IP address
    bi_directional str
    Bi directional
    translated_address str
    Translated IP address
    biDirectional String
    Bi directional
    translatedAddress String
    Translated IP address

    Package Details

    Repository
    scm pulumi/pulumi-scm
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the scm Terraform Provider.
    scm logo
    Strata Cloud Manager v0.4.3 published on Saturday, Nov 8, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate