1. Packages
  2. Juniper Mist
  3. API Docs
  4. device
  5. Gateway
Juniper Mist v0.0.27 published on Friday, Sep 27, 2024 by Pulumi

junipermist.device.Gateway

Explore with Pulumi AI

junipermist logo
Juniper Mist v0.0.27 published on Friday, Sep 27, 2024 by Pulumi

    This resource manages the Gateway configuration. It can be used to define specific configuration at the device level or to override Org Gateway template settings.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as junipermist from "@pulumi/juniper-mist";
    
    const gatewayOne = new junipermist.device.Gateway("gateway_one", {
        name: "gateway_one",
        deviceId: clusterOne.deviceId,
        siteId: clusterOne.siteId,
        oobIpConfig: {
            type: "dhcp",
        },
        dnsServers: ["8.8.8.8"],
        additionalConfigCmds: [
            "annotate system \" -- custom-main -- Template level --\"",
            "delete apply-groups custom-main",
            "delete groups custom-main",
            "set groups custom-main",
            "set groups custom-main system services ssh root-login allow",
            "set apply-groups custom-main",
        ],
    });
    
    import pulumi
    import pulumi_juniper_mist as junipermist
    
    gateway_one = junipermist.device.Gateway("gateway_one",
        name="gateway_one",
        device_id=cluster_one["deviceId"],
        site_id=cluster_one["siteId"],
        oob_ip_config={
            "type": "dhcp",
        },
        dns_servers=["8.8.8.8"],
        additional_config_cmds=[
            "annotate system \" -- custom-main -- Template level --\"",
            "delete apply-groups custom-main",
            "delete groups custom-main",
            "set groups custom-main",
            "set groups custom-main system services ssh root-login allow",
            "set apply-groups custom-main",
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-junipermist/sdk/go/junipermist/device"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := device.NewGateway(ctx, "gateway_one", &device.GatewayArgs{
    			Name:     pulumi.String("gateway_one"),
    			DeviceId: pulumi.Any(clusterOne.DeviceId),
    			SiteId:   pulumi.Any(clusterOne.SiteId),
    			OobIpConfig: &device.GatewayOobIpConfigArgs{
    				Type: pulumi.String("dhcp"),
    			},
    			DnsServers: pulumi.StringArray{
    				pulumi.String("8.8.8.8"),
    			},
    			AdditionalConfigCmds: pulumi.StringArray{
    				pulumi.String("annotate system \" -- custom-main -- Template level --\""),
    				pulumi.String("delete apply-groups custom-main"),
    				pulumi.String("delete groups custom-main"),
    				pulumi.String("set groups custom-main"),
    				pulumi.String("set groups custom-main system services ssh root-login allow"),
    				pulumi.String("set apply-groups custom-main"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using JuniperMist = Pulumi.JuniperMist;
    
    return await Deployment.RunAsync(() => 
    {
        var gatewayOne = new JuniperMist.Device.Gateway("gateway_one", new()
        {
            Name = "gateway_one",
            DeviceId = clusterOne.DeviceId,
            SiteId = clusterOne.SiteId,
            OobIpConfig = new JuniperMist.Device.Inputs.GatewayOobIpConfigArgs
            {
                Type = "dhcp",
            },
            DnsServers = new[]
            {
                "8.8.8.8",
            },
            AdditionalConfigCmds = new[]
            {
                "annotate system \" -- custom-main -- Template level --\"",
                "delete apply-groups custom-main",
                "delete groups custom-main",
                "set groups custom-main",
                "set groups custom-main system services ssh root-login allow",
                "set apply-groups custom-main",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.junipermist.device.Gateway;
    import com.pulumi.junipermist.device.GatewayArgs;
    import com.pulumi.junipermist.device.inputs.GatewayOobIpConfigArgs;
    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) {
            var gatewayOne = new Gateway("gatewayOne", GatewayArgs.builder()
                .name("gateway_one")
                .deviceId(clusterOne.deviceId())
                .siteId(clusterOne.siteId())
                .oobIpConfig(GatewayOobIpConfigArgs.builder()
                    .type("dhcp")
                    .build())
                .dnsServers("8.8.8.8")
                .additionalConfigCmds(            
                    "annotate system \" -- custom-main -- Template level --\"",
                    "delete apply-groups custom-main",
                    "delete groups custom-main",
                    "set groups custom-main",
                    "set groups custom-main system services ssh root-login allow",
                    "set apply-groups custom-main")
                .build());
    
        }
    }
    
    resources:
      gatewayOne:
        type: junipermist:device:Gateway
        name: gateway_one
        properties:
          name: gateway_one
          deviceId: ${clusterOne.deviceId}
          siteId: ${clusterOne.siteId}
          oobIpConfig:
            type: dhcp
          dnsServers:
            - 8.8.8.8
          additionalConfigCmds:
            - annotate system " -- custom-main -- Template level --"
            - delete apply-groups custom-main
            - delete groups custom-main
            - set groups custom-main
            - set groups custom-main system services ssh root-login allow
            - set apply-groups custom-main
    

    Create Gateway Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Gateway(name: string, args: GatewayArgs, opts?: CustomResourceOptions);
    @overload
    def Gateway(resource_name: str,
                args: GatewayArgs,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def Gateway(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                device_id: Optional[str] = None,
                site_id: Optional[str] = None,
                idp_profiles: Optional[Mapping[str, GatewayIdpProfilesArgs]] = None,
                dns_servers: Optional[Sequence[str]] = None,
                oob_ip_config: Optional[GatewayOobIpConfigArgs] = None,
                dns_suffixes: Optional[Sequence[str]] = None,
                extra_routes: Optional[Mapping[str, GatewayExtraRoutesArgs]] = None,
                extra_routes6: Optional[Mapping[str, GatewayExtraRoutes6Args]] = None,
                additional_config_cmds: Optional[Sequence[str]] = None,
                ip_configs: Optional[Mapping[str, GatewayIpConfigsArgs]] = None,
                managed: Optional[bool] = None,
                map_id: Optional[str] = None,
                msp_id: Optional[str] = None,
                name: Optional[str] = None,
                networks: Optional[Sequence[GatewayNetworkArgs]] = None,
                notes: Optional[str] = None,
                y: Optional[float] = None,
                dhcpd_config: Optional[GatewayDhcpdConfigArgs] = None,
                path_preferences: Optional[Mapping[str, GatewayPathPreferencesArgs]] = None,
                port_config: Optional[Mapping[str, GatewayPortConfigArgs]] = None,
                port_mirroring: Optional[GatewayPortMirroringArgs] = None,
                router_id: Optional[str] = None,
                routing_policies: Optional[Mapping[str, GatewayRoutingPoliciesArgs]] = None,
                service_policies: Optional[Sequence[GatewayServicePolicyArgs]] = None,
                bgp_config: Optional[Mapping[str, GatewayBgpConfigArgs]] = None,
                tunnel_configs: Optional[Mapping[str, GatewayTunnelConfigsArgs]] = None,
                tunnel_provider_options: Optional[GatewayTunnelProviderOptionsArgs] = None,
                vars: Optional[Mapping[str, str]] = None,
                vrf_config: Optional[GatewayVrfConfigArgs] = None,
                vrf_instances: Optional[Mapping[str, GatewayVrfInstancesArgs]] = None,
                x: Optional[float] = None,
                ntp_servers: Optional[Sequence[str]] = None)
    func NewGateway(ctx *Context, name string, args GatewayArgs, opts ...ResourceOption) (*Gateway, error)
    public Gateway(string name, GatewayArgs args, CustomResourceOptions? opts = null)
    public Gateway(String name, GatewayArgs args)
    public Gateway(String name, GatewayArgs args, CustomResourceOptions options)
    
    type: junipermist:device:Gateway
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args GatewayArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args GatewayArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args GatewayArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args GatewayArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args GatewayArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var gatewayResource = new JuniperMist.Device.Gateway("gatewayResource", new()
    {
        DeviceId = "string",
        SiteId = "string",
        IdpProfiles = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayIdpProfilesArgs
            {
                BaseProfile = "string",
                CreatedTime = 0,
                Id = "string",
                ModifiedTime = 0,
                Name = "string",
                OrgId = "string",
                Overwrites = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayIdpProfilesOverwriteArgs
                    {
                        Action = "string",
                        Matching = new JuniperMist.Device.Inputs.GatewayIdpProfilesOverwriteMatchingArgs
                        {
                            AttackNames = new[]
                            {
                                "string",
                            },
                            DstSubnets = new[]
                            {
                                "string",
                            },
                            Severities = new[]
                            {
                                "string",
                            },
                        },
                        Name = "string",
                    },
                },
            } },
        },
        DnsServers = new[]
        {
            "string",
        },
        OobIpConfig = new JuniperMist.Device.Inputs.GatewayOobIpConfigArgs
        {
            Gateway = "string",
            Ip = "string",
            Netmask = "string",
            Node1 = new JuniperMist.Device.Inputs.GatewayOobIpConfigNode1Args
            {
                Gateway = "string",
                Ip = "string",
                Netmask = "string",
                Type = "string",
                UseMgmtVrf = false,
                UseMgmtVrfForHostOut = false,
                VlanId = "string",
            },
            Type = "string",
            UseMgmtVrf = false,
            UseMgmtVrfForHostOut = false,
            VlanId = "string",
        },
        DnsSuffixes = new[]
        {
            "string",
        },
        ExtraRoutes = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayExtraRoutesArgs
            {
                Via = "string",
            } },
        },
        ExtraRoutes6 = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayExtraRoutes6Args
            {
                Via = "string",
            } },
        },
        AdditionalConfigCmds = new[]
        {
            "string",
        },
        IpConfigs = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayIpConfigsArgs
            {
                Ip = "string",
                Netmask = "string",
                SecondaryIps = new[]
                {
                    "string",
                },
                Type = "string",
            } },
        },
        Managed = false,
        MapId = "string",
        MspId = "string",
        Name = "string",
        Networks = new[]
        {
            new JuniperMist.Device.Inputs.GatewayNetworkArgs
            {
                Name = "string",
                Subnet = "string",
                Id = "string",
                Gateway = "string",
                CreatedTime = 0,
                InternalAccess = new JuniperMist.Device.Inputs.GatewayNetworkInternalAccessArgs
                {
                    Enabled = false,
                },
                InternetAccess = new JuniperMist.Device.Inputs.GatewayNetworkInternetAccessArgs
                {
                    CreateSimpleServicePolicy = false,
                    DestinationNat = 
                    {
                        { "string", new JuniperMist.Device.Inputs.GatewayNetworkInternetAccessDestinationNatArgs
                        {
                            InternalIp = "string",
                            Name = "string",
                            Port = 0,
                        } },
                    },
                    Enabled = false,
                    Restricted = false,
                    StaticNat = 
                    {
                        { "string", new JuniperMist.Device.Inputs.GatewayNetworkInternetAccessStaticNatArgs
                        {
                            InternalIp = "string",
                            Name = "string",
                            WanName = "string",
                        } },
                    },
                },
                Isolation = false,
                ModifiedTime = 0,
                Gateway6 = "string",
                OrgId = "string",
                RoutedForNetworks = new[]
                {
                    "string",
                },
                DisallowMistServices = false,
                Subnet6 = "string",
                Tenants = 
                {
                    { "string", new JuniperMist.Device.Inputs.GatewayNetworkTenantsArgs
                    {
                        Addresses = new[]
                        {
                            "string",
                        },
                    } },
                },
                VlanId = "string",
                VpnAccess = 
                {
                    { "string", new JuniperMist.Device.Inputs.GatewayNetworkVpnAccessArgs
                    {
                        AdvertisedSubnet = "string",
                        AllowPing = false,
                        DestinationNat = 
                        {
                            { "string", new JuniperMist.Device.Inputs.GatewayNetworkVpnAccessDestinationNatArgs
                            {
                                InternalIp = "string",
                                Name = "string",
                                Port = 0,
                            } },
                        },
                        NatPool = "string",
                        NoReadvertiseToLanBgp = false,
                        NoReadvertiseToLanOspf = false,
                        NoReadvertiseToOverlay = false,
                        OtherVrfs = new[]
                        {
                            "string",
                        },
                        Routed = false,
                        SourceNat = new JuniperMist.Device.Inputs.GatewayNetworkVpnAccessSourceNatArgs
                        {
                            ExternalIp = "string",
                        },
                        StaticNat = 
                        {
                            { "string", new JuniperMist.Device.Inputs.GatewayNetworkVpnAccessStaticNatArgs
                            {
                                InternalIp = "string",
                                Name = "string",
                                WanName = "string",
                            } },
                        },
                        SummarizedSubnet = "string",
                        SummarizedSubnetToLanBgp = "string",
                        SummarizedSubnetToLanOspf = "string",
                    } },
                },
            },
        },
        Notes = "string",
        Y = 0,
        DhcpdConfig = new JuniperMist.Device.Inputs.GatewayDhcpdConfigArgs
        {
            Config = 
            {
                { "string", new JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigArgs
                {
                    DnsServers = new[]
                    {
                        "string",
                    },
                    DnsSuffixes = new[]
                    {
                        "string",
                    },
                    FixedBindings = 
                    {
                        { "string", new JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigFixedBindingsArgs
                        {
                            Ip = "string",
                            Name = "string",
                        } },
                    },
                    Gateway = "string",
                    IpEnd = "string",
                    IpEnd6 = "string",
                    IpStart = "string",
                    IpStart6 = "string",
                    LeaseTime = 0,
                    Options = 
                    {
                        { "string", new JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigOptionsArgs
                        {
                            Type = "string",
                            Value = "string",
                        } },
                    },
                    ServerIdOverride = false,
                    Servers = new[]
                    {
                        "string",
                    },
                    Servers6s = new[]
                    {
                        "string",
                    },
                    Type = "string",
                    Type6 = "string",
                    VendorEncapulated = 
                    {
                        { "string", new JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigVendorEncapulatedArgs
                        {
                            Type = "string",
                            Value = "string",
                        } },
                    },
                } },
            },
            Enabled = false,
        },
        PathPreferences = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayPathPreferencesArgs
            {
                Paths = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayPathPreferencesPathArgs
                    {
                        Cost = 0,
                        Disabled = false,
                        GatewayIp = "string",
                        InternetAccess = false,
                        Name = "string",
                        Networks = new[]
                        {
                            "string",
                        },
                        TargetIps = new[]
                        {
                            "string",
                        },
                        Type = "string",
                        WanName = "string",
                    },
                },
                Strategy = "string",
            } },
        },
        PortConfig = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayPortConfigArgs
            {
                Usage = "string",
                Networks = new[]
                {
                    "string",
                },
                VlanId = 0,
                Aggregated = false,
                Critical = false,
                Description = "string",
                DisableAutoneg = false,
                Disabled = false,
                DslType = "string",
                DslVci = 0,
                DslVpi = 0,
                Duplex = "string",
                IpConfig = new JuniperMist.Device.Inputs.GatewayPortConfigIpConfigArgs
                {
                    Dns = new[]
                    {
                        "string",
                    },
                    DnsSuffixes = new[]
                    {
                        "string",
                    },
                    Gateway = "string",
                    Ip = "string",
                    Netmask = "string",
                    Network = "string",
                    PoserPassword = "string",
                    PppoeAuth = "string",
                    PppoeUsername = "string",
                    Type = "string",
                },
                LteApn = "string",
                OuterVlanId = 0,
                LteBackup = false,
                LtePassword = "string",
                LteUsername = "string",
                Mtu = 0,
                WanSourceNat = new JuniperMist.Device.Inputs.GatewayPortConfigWanSourceNatArgs
                {
                    Disabled = false,
                    NatPool = "string",
                },
                AeLacpForceUp = false,
                LteAuth = "string",
                PoeDisabled = false,
                PortNetwork = "string",
                PreserveDscp = false,
                Redundant = false,
                RethIdx = 0,
                RethNode = "string",
                RethNodes = new[]
                {
                    "string",
                },
                Speed = "string",
                SsrNoVirtualMac = false,
                SvrPortRange = "string",
                TrafficShaping = new JuniperMist.Device.Inputs.GatewayPortConfigTrafficShapingArgs
                {
                    ClassPercentages = new[]
                    {
                        0,
                    },
                    Enabled = false,
                },
                AeIdx = "string",
                AeDisableLacp = false,
                VpnPaths = 
                {
                    { "string", new JuniperMist.Device.Inputs.GatewayPortConfigVpnPathsArgs
                    {
                        BfdProfile = "string",
                        BfdUseTunnelMode = false,
                        Preference = 0,
                        Role = "string",
                        TrafficShaping = new JuniperMist.Device.Inputs.GatewayPortConfigVpnPathsTrafficShapingArgs
                        {
                            ClassPercentages = new[]
                            {
                                0,
                            },
                            Enabled = false,
                        },
                    } },
                },
                WanArpPolicer = "string",
                WanExtIp = "string",
                Name = "string",
                WanType = "string",
            } },
        },
        PortMirroring = new JuniperMist.Device.Inputs.GatewayPortMirroringArgs
        {
            PortMirror = new JuniperMist.Device.Inputs.GatewayPortMirroringPortMirrorArgs
            {
                FamilyType = "string",
                IngressPortIds = new[]
                {
                    "string",
                },
                OutputPortId = "string",
                Rate = 0,
                RunLength = 0,
            },
        },
        RouterId = "string",
        RoutingPolicies = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayRoutingPoliciesArgs
            {
                Terms = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermArgs
                    {
                        Action = new JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermActionArgs
                        {
                            Accept = false,
                            AddCommunities = new[]
                            {
                                "string",
                            },
                            AddTargetVrfs = new[]
                            {
                                "string",
                            },
                            Communities = new[]
                            {
                                "string",
                            },
                            ExcludeAsPaths = new[]
                            {
                                "string",
                            },
                            ExcludeCommunities = new[]
                            {
                                "string",
                            },
                            ExportCommunitites = new[]
                            {
                                "string",
                            },
                            LocalPreference = "string",
                            PrependAsPaths = new[]
                            {
                                "string",
                            },
                        },
                        Matching = new JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermMatchingArgs
                        {
                            AsPaths = new[]
                            {
                                "string",
                            },
                            Communities = new[]
                            {
                                "string",
                            },
                            Networks = new[]
                            {
                                "string",
                            },
                            Prefixes = new[]
                            {
                                "string",
                            },
                            Protocols = new[]
                            {
                                "string",
                            },
                            RouteExists = new JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermMatchingRouteExistsArgs
                            {
                                Route = "string",
                                VrfName = "string",
                            },
                            VpnNeighborMacs = new[]
                            {
                                "string",
                            },
                            VpnPathSla = new JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermMatchingVpnPathSlaArgs
                            {
                                MaxJitter = 0,
                                MaxLatency = 0,
                                MaxLoss = 0,
                            },
                            VpnPaths = new[]
                            {
                                "string",
                            },
                        },
                    },
                },
            } },
        },
        ServicePolicies = new[]
        {
            new JuniperMist.Device.Inputs.GatewayServicePolicyArgs
            {
                Action = "string",
                Appqoe = new JuniperMist.Device.Inputs.GatewayServicePolicyAppqoeArgs
                {
                    Enabled = false,
                },
                Ewfs = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayServicePolicyEwfArgs
                    {
                        AlertOnly = false,
                        BlockMessage = "string",
                        Enabled = false,
                        Profile = "string",
                    },
                },
                Idp = new JuniperMist.Device.Inputs.GatewayServicePolicyIdpArgs
                {
                    AlertOnly = false,
                    Enabled = false,
                    IdpprofileId = "string",
                    Profile = "string",
                },
                LocalRouting = false,
                Name = "string",
                PathPreference = "string",
                ServicepolicyId = "string",
                Services = new[]
                {
                    "string",
                },
                Tenants = new[]
                {
                    "string",
                },
            },
        },
        BgpConfig = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayBgpConfigArgs
            {
                AuthKey = "string",
                BfdMinimumInterval = 0,
                BfdMultiplier = 0,
                Communities = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayBgpConfigCommunityArgs
                    {
                        Id = "string",
                        LocalPreference = 0,
                        VpnName = "string",
                    },
                },
                DisableBfd = false,
                Export = "string",
                ExportPolicy = "string",
                ExtendedV4Nexthop = false,
                GracefulRestartTime = 0,
                HoldTime = 0,
                Import = "string",
                ImportPolicy = "string",
                LocalAs = 0,
                NeighborAs = 0,
                Neighbors = 
                {
                    { "string", new JuniperMist.Device.Inputs.GatewayBgpConfigNeighborsArgs
                    {
                        Disabled = false,
                        ExportPolicy = "string",
                        HoldTime = 0,
                        ImportPolicy = "string",
                        MultihopTtl = 0,
                        NeighborAs = 0,
                    } },
                },
                Networks = new[]
                {
                    "string",
                },
                NoReadvertiseToOverlay = false,
                TunnelName = "string",
                Type = "string",
                Via = "string",
                VpnName = "string",
                WanName = "string",
            } },
        },
        TunnelConfigs = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayTunnelConfigsArgs
            {
                AutoProvision = new JuniperMist.Device.Inputs.GatewayTunnelConfigsAutoProvisionArgs
                {
                    Enable = false,
                    Latlng = new JuniperMist.Device.Inputs.GatewayTunnelConfigsAutoProvisionLatlngArgs
                    {
                        Lat = 0,
                        Lng = 0,
                    },
                    Primary = new JuniperMist.Device.Inputs.GatewayTunnelConfigsAutoProvisionPrimaryArgs
                    {
                        NumHosts = "string",
                        WanNames = new[]
                        {
                            "string",
                        },
                    },
                    Secondary = new JuniperMist.Device.Inputs.GatewayTunnelConfigsAutoProvisionSecondaryArgs
                    {
                        NumHosts = "string",
                        WanNames = new[]
                        {
                            "string",
                        },
                    },
                },
                IkeLifetime = 0,
                IkeMode = "string",
                IkeProposals = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayTunnelConfigsIkeProposalArgs
                    {
                        AuthAlgo = "string",
                        DhGroup = "string",
                        EncAlgo = "string",
                    },
                },
                IpsecLifetime = 0,
                IpsecProposals = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayTunnelConfigsIpsecProposalArgs
                    {
                        AuthAlgo = "string",
                        DhGroup = "string",
                        EncAlgo = "string",
                    },
                },
                LocalId = "string",
                Mode = "string",
                Networks = new[]
                {
                    "string",
                },
                Primary = new JuniperMist.Device.Inputs.GatewayTunnelConfigsPrimaryArgs
                {
                    Hosts = new[]
                    {
                        "string",
                    },
                    InternalIps = new[]
                    {
                        "string",
                    },
                    ProbeIps = new[]
                    {
                        "string",
                    },
                    RemoteIds = new[]
                    {
                        "string",
                    },
                    WanNames = new[]
                    {
                        "string",
                    },
                },
                Probe = new JuniperMist.Device.Inputs.GatewayTunnelConfigsProbeArgs
                {
                    Interval = 0,
                    Threshold = 0,
                    Timeout = 0,
                    Type = "string",
                },
                Protocol = "string",
                Provider = "string",
                Psk = "string",
                Secondary = new JuniperMist.Device.Inputs.GatewayTunnelConfigsSecondaryArgs
                {
                    Hosts = new[]
                    {
                        "string",
                    },
                    InternalIps = new[]
                    {
                        "string",
                    },
                    ProbeIps = new[]
                    {
                        "string",
                    },
                    RemoteIds = new[]
                    {
                        "string",
                    },
                    WanNames = new[]
                    {
                        "string",
                    },
                },
                Version = "string",
            } },
        },
        TunnelProviderOptions = new JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsArgs
        {
            Jse = new JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsJseArgs
            {
                Name = "string",
                NumUsers = 0,
            },
            Zscaler = new JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsZscalerArgs
            {
                AupAcceptanceRequired = false,
                AupExpire = 0,
                AupSslProxy = false,
                DownloadMbps = 0,
                EnableAup = false,
                EnableCaution = false,
                EnforceAuthentication = false,
                Name = "string",
                SubLocations = new[]
                {
                    new JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsZscalerSubLocationArgs
                    {
                        AupAcceptanceRequired = false,
                        AupExpire = 0,
                        AupSslProxy = false,
                        DownloadMbps = 0,
                        EnableAup = false,
                        EnableCaution = false,
                        EnforceAuthentication = false,
                        Subnets = new[]
                        {
                            "string",
                        },
                        UploadMbps = 0,
                    },
                },
                UploadMbps = 0,
                UseXff = false,
            },
        },
        Vars = 
        {
            { "string", "string" },
        },
        VrfConfig = new JuniperMist.Device.Inputs.GatewayVrfConfigArgs
        {
            Enabled = false,
        },
        VrfInstances = 
        {
            { "string", new JuniperMist.Device.Inputs.GatewayVrfInstancesArgs
            {
                Networks = new[]
                {
                    "string",
                },
            } },
        },
        X = 0,
        NtpServers = new[]
        {
            "string",
        },
    });
    
    example, err := device.NewGateway(ctx, "gatewayResource", &device.GatewayArgs{
    	DeviceId: pulumi.String("string"),
    	SiteId:   pulumi.String("string"),
    	IdpProfiles: device.GatewayIdpProfilesMap{
    		"string": &device.GatewayIdpProfilesArgs{
    			BaseProfile:  pulumi.String("string"),
    			CreatedTime:  pulumi.Float64(0),
    			Id:           pulumi.String("string"),
    			ModifiedTime: pulumi.Float64(0),
    			Name:         pulumi.String("string"),
    			OrgId:        pulumi.String("string"),
    			Overwrites: device.GatewayIdpProfilesOverwriteArray{
    				&device.GatewayIdpProfilesOverwriteArgs{
    					Action: pulumi.String("string"),
    					Matching: &device.GatewayIdpProfilesOverwriteMatchingArgs{
    						AttackNames: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						DstSubnets: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Severities: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					Name: pulumi.String("string"),
    				},
    			},
    		},
    	},
    	DnsServers: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	OobIpConfig: &device.GatewayOobIpConfigArgs{
    		Gateway: pulumi.String("string"),
    		Ip:      pulumi.String("string"),
    		Netmask: pulumi.String("string"),
    		Node1: &device.GatewayOobIpConfigNode1Args{
    			Gateway:              pulumi.String("string"),
    			Ip:                   pulumi.String("string"),
    			Netmask:              pulumi.String("string"),
    			Type:                 pulumi.String("string"),
    			UseMgmtVrf:           pulumi.Bool(false),
    			UseMgmtVrfForHostOut: pulumi.Bool(false),
    			VlanId:               pulumi.String("string"),
    		},
    		Type:                 pulumi.String("string"),
    		UseMgmtVrf:           pulumi.Bool(false),
    		UseMgmtVrfForHostOut: pulumi.Bool(false),
    		VlanId:               pulumi.String("string"),
    	},
    	DnsSuffixes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	ExtraRoutes: device.GatewayExtraRoutesMap{
    		"string": &device.GatewayExtraRoutesArgs{
    			Via: pulumi.String("string"),
    		},
    	},
    	ExtraRoutes6: device.GatewayExtraRoutes6Map{
    		"string": &device.GatewayExtraRoutes6Args{
    			Via: pulumi.String("string"),
    		},
    	},
    	AdditionalConfigCmds: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	IpConfigs: device.GatewayIpConfigsMap{
    		"string": &device.GatewayIpConfigsArgs{
    			Ip:      pulumi.String("string"),
    			Netmask: pulumi.String("string"),
    			SecondaryIps: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Type: pulumi.String("string"),
    		},
    	},
    	Managed: pulumi.Bool(false),
    	MapId:   pulumi.String("string"),
    	MspId:   pulumi.String("string"),
    	Name:    pulumi.String("string"),
    	Networks: device.GatewayNetworkArray{
    		&device.GatewayNetworkArgs{
    			Name:        pulumi.String("string"),
    			Subnet:      pulumi.String("string"),
    			Id:          pulumi.String("string"),
    			Gateway:     pulumi.String("string"),
    			CreatedTime: pulumi.Float64(0),
    			InternalAccess: &device.GatewayNetworkInternalAccessArgs{
    				Enabled: pulumi.Bool(false),
    			},
    			InternetAccess: &device.GatewayNetworkInternetAccessArgs{
    				CreateSimpleServicePolicy: pulumi.Bool(false),
    				DestinationNat: device.GatewayNetworkInternetAccessDestinationNatMap{
    					"string": &device.GatewayNetworkInternetAccessDestinationNatArgs{
    						InternalIp: pulumi.String("string"),
    						Name:       pulumi.String("string"),
    						Port:       pulumi.Int(0),
    					},
    				},
    				Enabled:    pulumi.Bool(false),
    				Restricted: pulumi.Bool(false),
    				StaticNat: device.GatewayNetworkInternetAccessStaticNatMap{
    					"string": &device.GatewayNetworkInternetAccessStaticNatArgs{
    						InternalIp: pulumi.String("string"),
    						Name:       pulumi.String("string"),
    						WanName:    pulumi.String("string"),
    					},
    				},
    			},
    			Isolation:    pulumi.Bool(false),
    			ModifiedTime: pulumi.Float64(0),
    			Gateway6:     pulumi.String("string"),
    			OrgId:        pulumi.String("string"),
    			RoutedForNetworks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			DisallowMistServices: pulumi.Bool(false),
    			Subnet6:              pulumi.String("string"),
    			Tenants: device.GatewayNetworkTenantsMap{
    				"string": &device.GatewayNetworkTenantsArgs{
    					Addresses: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    			VlanId: pulumi.String("string"),
    			VpnAccess: device.GatewayNetworkVpnAccessMap{
    				"string": &device.GatewayNetworkVpnAccessArgs{
    					AdvertisedSubnet: pulumi.String("string"),
    					AllowPing:        pulumi.Bool(false),
    					DestinationNat: device.GatewayNetworkVpnAccessDestinationNatMap{
    						"string": &device.GatewayNetworkVpnAccessDestinationNatArgs{
    							InternalIp: pulumi.String("string"),
    							Name:       pulumi.String("string"),
    							Port:       pulumi.Int(0),
    						},
    					},
    					NatPool:                pulumi.String("string"),
    					NoReadvertiseToLanBgp:  pulumi.Bool(false),
    					NoReadvertiseToLanOspf: pulumi.Bool(false),
    					NoReadvertiseToOverlay: pulumi.Bool(false),
    					OtherVrfs: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Routed: pulumi.Bool(false),
    					SourceNat: &device.GatewayNetworkVpnAccessSourceNatArgs{
    						ExternalIp: pulumi.String("string"),
    					},
    					StaticNat: device.GatewayNetworkVpnAccessStaticNatMap{
    						"string": &device.GatewayNetworkVpnAccessStaticNatArgs{
    							InternalIp: pulumi.String("string"),
    							Name:       pulumi.String("string"),
    							WanName:    pulumi.String("string"),
    						},
    					},
    					SummarizedSubnet:          pulumi.String("string"),
    					SummarizedSubnetToLanBgp:  pulumi.String("string"),
    					SummarizedSubnetToLanOspf: pulumi.String("string"),
    				},
    			},
    		},
    	},
    	Notes: pulumi.String("string"),
    	Y:     pulumi.Float64(0),
    	DhcpdConfig: &device.GatewayDhcpdConfigArgs{
    		Config: device.GatewayDhcpdConfigConfigMap{
    			"string": &device.GatewayDhcpdConfigConfigArgs{
    				DnsServers: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				DnsSuffixes: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				FixedBindings: device.GatewayDhcpdConfigConfigFixedBindingsMap{
    					"string": &device.GatewayDhcpdConfigConfigFixedBindingsArgs{
    						Ip:   pulumi.String("string"),
    						Name: pulumi.String("string"),
    					},
    				},
    				Gateway:   pulumi.String("string"),
    				IpEnd:     pulumi.String("string"),
    				IpEnd6:    pulumi.String("string"),
    				IpStart:   pulumi.String("string"),
    				IpStart6:  pulumi.String("string"),
    				LeaseTime: pulumi.Int(0),
    				Options: device.GatewayDhcpdConfigConfigOptionsMap{
    					"string": &device.GatewayDhcpdConfigConfigOptionsArgs{
    						Type:  pulumi.String("string"),
    						Value: pulumi.String("string"),
    					},
    				},
    				ServerIdOverride: pulumi.Bool(false),
    				Servers: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Servers6s: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Type:  pulumi.String("string"),
    				Type6: pulumi.String("string"),
    				VendorEncapulated: device.GatewayDhcpdConfigConfigVendorEncapulatedMap{
    					"string": &device.GatewayDhcpdConfigConfigVendorEncapulatedArgs{
    						Type:  pulumi.String("string"),
    						Value: pulumi.String("string"),
    					},
    				},
    			},
    		},
    		Enabled: pulumi.Bool(false),
    	},
    	PathPreferences: device.GatewayPathPreferencesMap{
    		"string": &device.GatewayPathPreferencesArgs{
    			Paths: device.GatewayPathPreferencesPathArray{
    				&device.GatewayPathPreferencesPathArgs{
    					Cost:           pulumi.Int(0),
    					Disabled:       pulumi.Bool(false),
    					GatewayIp:      pulumi.String("string"),
    					InternetAccess: pulumi.Bool(false),
    					Name:           pulumi.String("string"),
    					Networks: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					TargetIps: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Type:    pulumi.String("string"),
    					WanName: pulumi.String("string"),
    				},
    			},
    			Strategy: pulumi.String("string"),
    		},
    	},
    	PortConfig: device.GatewayPortConfigMap{
    		"string": &device.GatewayPortConfigArgs{
    			Usage: pulumi.String("string"),
    			Networks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			VlanId:         pulumi.Int(0),
    			Aggregated:     pulumi.Bool(false),
    			Critical:       pulumi.Bool(false),
    			Description:    pulumi.String("string"),
    			DisableAutoneg: pulumi.Bool(false),
    			Disabled:       pulumi.Bool(false),
    			DslType:        pulumi.String("string"),
    			DslVci:         pulumi.Int(0),
    			DslVpi:         pulumi.Int(0),
    			Duplex:         pulumi.String("string"),
    			IpConfig: &device.GatewayPortConfigIpConfigArgs{
    				Dns: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				DnsSuffixes: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				Gateway:       pulumi.String("string"),
    				Ip:            pulumi.String("string"),
    				Netmask:       pulumi.String("string"),
    				Network:       pulumi.String("string"),
    				PoserPassword: pulumi.String("string"),
    				PppoeAuth:     pulumi.String("string"),
    				PppoeUsername: pulumi.String("string"),
    				Type:          pulumi.String("string"),
    			},
    			LteApn:      pulumi.String("string"),
    			OuterVlanId: pulumi.Int(0),
    			LteBackup:   pulumi.Bool(false),
    			LtePassword: pulumi.String("string"),
    			LteUsername: pulumi.String("string"),
    			Mtu:         pulumi.Int(0),
    			WanSourceNat: &device.GatewayPortConfigWanSourceNatArgs{
    				Disabled: pulumi.Bool(false),
    				NatPool:  pulumi.String("string"),
    			},
    			AeLacpForceUp: pulumi.Bool(false),
    			LteAuth:       pulumi.String("string"),
    			PoeDisabled:   pulumi.Bool(false),
    			PortNetwork:   pulumi.String("string"),
    			PreserveDscp:  pulumi.Bool(false),
    			Redundant:     pulumi.Bool(false),
    			RethIdx:       pulumi.Int(0),
    			RethNode:      pulumi.String("string"),
    			RethNodes: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Speed:           pulumi.String("string"),
    			SsrNoVirtualMac: pulumi.Bool(false),
    			SvrPortRange:    pulumi.String("string"),
    			TrafficShaping: &device.GatewayPortConfigTrafficShapingArgs{
    				ClassPercentages: pulumi.IntArray{
    					pulumi.Int(0),
    				},
    				Enabled: pulumi.Bool(false),
    			},
    			AeIdx:         pulumi.String("string"),
    			AeDisableLacp: pulumi.Bool(false),
    			VpnPaths: device.GatewayPortConfigVpnPathsMap{
    				"string": &device.GatewayPortConfigVpnPathsArgs{
    					BfdProfile:       pulumi.String("string"),
    					BfdUseTunnelMode: pulumi.Bool(false),
    					Preference:       pulumi.Int(0),
    					Role:             pulumi.String("string"),
    					TrafficShaping: &device.GatewayPortConfigVpnPathsTrafficShapingArgs{
    						ClassPercentages: pulumi.IntArray{
    							pulumi.Int(0),
    						},
    						Enabled: pulumi.Bool(false),
    					},
    				},
    			},
    			WanArpPolicer: pulumi.String("string"),
    			WanExtIp:      pulumi.String("string"),
    			Name:          pulumi.String("string"),
    			WanType:       pulumi.String("string"),
    		},
    	},
    	PortMirroring: &device.GatewayPortMirroringArgs{
    		PortMirror: &device.GatewayPortMirroringPortMirrorArgs{
    			FamilyType: pulumi.String("string"),
    			IngressPortIds: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			OutputPortId: pulumi.String("string"),
    			Rate:         pulumi.Int(0),
    			RunLength:    pulumi.Int(0),
    		},
    	},
    	RouterId: pulumi.String("string"),
    	RoutingPolicies: device.GatewayRoutingPoliciesMap{
    		"string": &device.GatewayRoutingPoliciesArgs{
    			Terms: device.GatewayRoutingPoliciesTermArray{
    				&device.GatewayRoutingPoliciesTermArgs{
    					Action: &device.GatewayRoutingPoliciesTermActionArgs{
    						Accept: pulumi.Bool(false),
    						AddCommunities: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						AddTargetVrfs: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Communities: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						ExcludeAsPaths: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						ExcludeCommunities: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						ExportCommunitites: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						LocalPreference: pulumi.String("string"),
    						PrependAsPaths: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					Matching: &device.GatewayRoutingPoliciesTermMatchingArgs{
    						AsPaths: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Communities: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Networks: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Prefixes: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Protocols: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						RouteExists: &device.GatewayRoutingPoliciesTermMatchingRouteExistsArgs{
    							Route:   pulumi.String("string"),
    							VrfName: pulumi.String("string"),
    						},
    						VpnNeighborMacs: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						VpnPathSla: &device.GatewayRoutingPoliciesTermMatchingVpnPathSlaArgs{
    							MaxJitter:  pulumi.Int(0),
    							MaxLatency: pulumi.Int(0),
    							MaxLoss:    pulumi.Int(0),
    						},
    						VpnPaths: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    				},
    			},
    		},
    	},
    	ServicePolicies: device.GatewayServicePolicyArray{
    		&device.GatewayServicePolicyArgs{
    			Action: pulumi.String("string"),
    			Appqoe: &device.GatewayServicePolicyAppqoeArgs{
    				Enabled: pulumi.Bool(false),
    			},
    			Ewfs: device.GatewayServicePolicyEwfArray{
    				&device.GatewayServicePolicyEwfArgs{
    					AlertOnly:    pulumi.Bool(false),
    					BlockMessage: pulumi.String("string"),
    					Enabled:      pulumi.Bool(false),
    					Profile:      pulumi.String("string"),
    				},
    			},
    			Idp: &device.GatewayServicePolicyIdpArgs{
    				AlertOnly:    pulumi.Bool(false),
    				Enabled:      pulumi.Bool(false),
    				IdpprofileId: pulumi.String("string"),
    				Profile:      pulumi.String("string"),
    			},
    			LocalRouting:    pulumi.Bool(false),
    			Name:            pulumi.String("string"),
    			PathPreference:  pulumi.String("string"),
    			ServicepolicyId: pulumi.String("string"),
    			Services: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Tenants: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	BgpConfig: device.GatewayBgpConfigMap{
    		"string": &device.GatewayBgpConfigArgs{
    			AuthKey:            pulumi.String("string"),
    			BfdMinimumInterval: pulumi.Int(0),
    			BfdMultiplier:      pulumi.Int(0),
    			Communities: device.GatewayBgpConfigCommunityArray{
    				&device.GatewayBgpConfigCommunityArgs{
    					Id:              pulumi.String("string"),
    					LocalPreference: pulumi.Int(0),
    					VpnName:         pulumi.String("string"),
    				},
    			},
    			DisableBfd:          pulumi.Bool(false),
    			Export:              pulumi.String("string"),
    			ExportPolicy:        pulumi.String("string"),
    			ExtendedV4Nexthop:   pulumi.Bool(false),
    			GracefulRestartTime: pulumi.Int(0),
    			HoldTime:            pulumi.Int(0),
    			Import:              pulumi.String("string"),
    			ImportPolicy:        pulumi.String("string"),
    			LocalAs:             pulumi.Int(0),
    			NeighborAs:          pulumi.Int(0),
    			Neighbors: device.GatewayBgpConfigNeighborsMap{
    				"string": &device.GatewayBgpConfigNeighborsArgs{
    					Disabled:     pulumi.Bool(false),
    					ExportPolicy: pulumi.String("string"),
    					HoldTime:     pulumi.Int(0),
    					ImportPolicy: pulumi.String("string"),
    					MultihopTtl:  pulumi.Int(0),
    					NeighborAs:   pulumi.Int(0),
    				},
    			},
    			Networks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			NoReadvertiseToOverlay: pulumi.Bool(false),
    			TunnelName:             pulumi.String("string"),
    			Type:                   pulumi.String("string"),
    			Via:                    pulumi.String("string"),
    			VpnName:                pulumi.String("string"),
    			WanName:                pulumi.String("string"),
    		},
    	},
    	TunnelConfigs: device.GatewayTunnelConfigsMap{
    		"string": &device.GatewayTunnelConfigsArgs{
    			AutoProvision: &device.GatewayTunnelConfigsAutoProvisionArgs{
    				Enable: pulumi.Bool(false),
    				Latlng: &device.GatewayTunnelConfigsAutoProvisionLatlngArgs{
    					Lat: pulumi.Float64(0),
    					Lng: pulumi.Float64(0),
    				},
    				Primary: &device.GatewayTunnelConfigsAutoProvisionPrimaryArgs{
    					NumHosts: pulumi.String("string"),
    					WanNames: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    				Secondary: &device.GatewayTunnelConfigsAutoProvisionSecondaryArgs{
    					NumHosts: pulumi.String("string"),
    					WanNames: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    			IkeLifetime: pulumi.Int(0),
    			IkeMode:     pulumi.String("string"),
    			IkeProposals: device.GatewayTunnelConfigsIkeProposalArray{
    				&device.GatewayTunnelConfigsIkeProposalArgs{
    					AuthAlgo: pulumi.String("string"),
    					DhGroup:  pulumi.String("string"),
    					EncAlgo:  pulumi.String("string"),
    				},
    			},
    			IpsecLifetime: pulumi.Int(0),
    			IpsecProposals: device.GatewayTunnelConfigsIpsecProposalArray{
    				&device.GatewayTunnelConfigsIpsecProposalArgs{
    					AuthAlgo: pulumi.String("string"),
    					DhGroup:  pulumi.String("string"),
    					EncAlgo:  pulumi.String("string"),
    				},
    			},
    			LocalId: pulumi.String("string"),
    			Mode:    pulumi.String("string"),
    			Networks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Primary: &device.GatewayTunnelConfigsPrimaryArgs{
    				Hosts: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				InternalIps: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				ProbeIps: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				RemoteIds: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				WanNames: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			Probe: &device.GatewayTunnelConfigsProbeArgs{
    				Interval:  pulumi.Int(0),
    				Threshold: pulumi.Int(0),
    				Timeout:   pulumi.Int(0),
    				Type:      pulumi.String("string"),
    			},
    			Protocol: pulumi.String("string"),
    			Provider: pulumi.String("string"),
    			Psk:      pulumi.String("string"),
    			Secondary: &device.GatewayTunnelConfigsSecondaryArgs{
    				Hosts: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				InternalIps: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				ProbeIps: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				RemoteIds: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				WanNames: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    			Version: pulumi.String("string"),
    		},
    	},
    	TunnelProviderOptions: &device.GatewayTunnelProviderOptionsArgs{
    		Jse: &device.GatewayTunnelProviderOptionsJseArgs{
    			Name:     pulumi.String("string"),
    			NumUsers: pulumi.Int(0),
    		},
    		Zscaler: &device.GatewayTunnelProviderOptionsZscalerArgs{
    			AupAcceptanceRequired: pulumi.Bool(false),
    			AupExpire:             pulumi.Int(0),
    			AupSslProxy:           pulumi.Bool(false),
    			DownloadMbps:          pulumi.Int(0),
    			EnableAup:             pulumi.Bool(false),
    			EnableCaution:         pulumi.Bool(false),
    			EnforceAuthentication: pulumi.Bool(false),
    			Name:                  pulumi.String("string"),
    			SubLocations: device.GatewayTunnelProviderOptionsZscalerSubLocationArray{
    				&device.GatewayTunnelProviderOptionsZscalerSubLocationArgs{
    					AupAcceptanceRequired: pulumi.Bool(false),
    					AupExpire:             pulumi.Int(0),
    					AupSslProxy:           pulumi.Bool(false),
    					DownloadMbps:          pulumi.Int(0),
    					EnableAup:             pulumi.Bool(false),
    					EnableCaution:         pulumi.Bool(false),
    					EnforceAuthentication: pulumi.Bool(false),
    					Subnets: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					UploadMbps: pulumi.Int(0),
    				},
    			},
    			UploadMbps: pulumi.Int(0),
    			UseXff:     pulumi.Bool(false),
    		},
    	},
    	Vars: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	VrfConfig: &device.GatewayVrfConfigArgs{
    		Enabled: pulumi.Bool(false),
    	},
    	VrfInstances: device.GatewayVrfInstancesMap{
    		"string": &device.GatewayVrfInstancesArgs{
    			Networks: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	X: pulumi.Float64(0),
    	NtpServers: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var gatewayResource = new Gateway("gatewayResource", GatewayArgs.builder()
        .deviceId("string")
        .siteId("string")
        .idpProfiles(Map.of("string", Map.ofEntries(
            Map.entry("baseProfile", "string"),
            Map.entry("createdTime", 0),
            Map.entry("id", "string"),
            Map.entry("modifiedTime", 0),
            Map.entry("name", "string"),
            Map.entry("orgId", "string"),
            Map.entry("overwrites", Map.ofEntries(
                Map.entry("action", "string"),
                Map.entry("matching", Map.ofEntries(
                    Map.entry("attackNames", "string"),
                    Map.entry("dstSubnets", "string"),
                    Map.entry("severities", "string")
                )),
                Map.entry("name", "string")
            ))
        )))
        .dnsServers("string")
        .oobIpConfig(GatewayOobIpConfigArgs.builder()
            .gateway("string")
            .ip("string")
            .netmask("string")
            .node1(GatewayOobIpConfigNode1Args.builder()
                .gateway("string")
                .ip("string")
                .netmask("string")
                .type("string")
                .useMgmtVrf(false)
                .useMgmtVrfForHostOut(false)
                .vlanId("string")
                .build())
            .type("string")
            .useMgmtVrf(false)
            .useMgmtVrfForHostOut(false)
            .vlanId("string")
            .build())
        .dnsSuffixes("string")
        .extraRoutes(Map.of("string", Map.of("via", "string")))
        .extraRoutes6(Map.of("string", Map.of("via", "string")))
        .additionalConfigCmds("string")
        .ipConfigs(Map.of("string", Map.ofEntries(
            Map.entry("ip", "string"),
            Map.entry("netmask", "string"),
            Map.entry("secondaryIps", "string"),
            Map.entry("type", "string")
        )))
        .managed(false)
        .mapId("string")
        .mspId("string")
        .name("string")
        .networks(GatewayNetworkArgs.builder()
            .name("string")
            .subnet("string")
            .id("string")
            .gateway("string")
            .createdTime(0)
            .internalAccess(GatewayNetworkInternalAccessArgs.builder()
                .enabled(false)
                .build())
            .internetAccess(GatewayNetworkInternetAccessArgs.builder()
                .createSimpleServicePolicy(false)
                .destinationNat(Map.of("string", Map.ofEntries(
                    Map.entry("internalIp", "string"),
                    Map.entry("name", "string"),
                    Map.entry("port", 0)
                )))
                .enabled(false)
                .restricted(false)
                .staticNat(Map.of("string", Map.ofEntries(
                    Map.entry("internalIp", "string"),
                    Map.entry("name", "string"),
                    Map.entry("wanName", "string")
                )))
                .build())
            .isolation(false)
            .modifiedTime(0)
            .gateway6("string")
            .orgId("string")
            .routedForNetworks("string")
            .disallowMistServices(false)
            .subnet6("string")
            .tenants(Map.of("string", Map.of("addresses", "string")))
            .vlanId("string")
            .vpnAccess(Map.of("string", Map.ofEntries(
                Map.entry("advertisedSubnet", "string"),
                Map.entry("allowPing", false),
                Map.entry("destinationNat", Map.of("string", Map.ofEntries(
                    Map.entry("internalIp", "string"),
                    Map.entry("name", "string"),
                    Map.entry("port", 0)
                ))),
                Map.entry("natPool", "string"),
                Map.entry("noReadvertiseToLanBgp", false),
                Map.entry("noReadvertiseToLanOspf", false),
                Map.entry("noReadvertiseToOverlay", false),
                Map.entry("otherVrfs", "string"),
                Map.entry("routed", false),
                Map.entry("sourceNat", Map.of("externalIp", "string")),
                Map.entry("staticNat", Map.of("string", Map.ofEntries(
                    Map.entry("internalIp", "string"),
                    Map.entry("name", "string"),
                    Map.entry("wanName", "string")
                ))),
                Map.entry("summarizedSubnet", "string"),
                Map.entry("summarizedSubnetToLanBgp", "string"),
                Map.entry("summarizedSubnetToLanOspf", "string")
            )))
            .build())
        .notes("string")
        .y(0)
        .dhcpdConfig(GatewayDhcpdConfigArgs.builder()
            .config(Map.of("string", Map.ofEntries(
                Map.entry("dnsServers", "string"),
                Map.entry("dnsSuffixes", "string"),
                Map.entry("fixedBindings", Map.of("string", Map.ofEntries(
                    Map.entry("ip", "string"),
                    Map.entry("name", "string")
                ))),
                Map.entry("gateway", "string"),
                Map.entry("ipEnd", "string"),
                Map.entry("ipEnd6", "string"),
                Map.entry("ipStart", "string"),
                Map.entry("ipStart6", "string"),
                Map.entry("leaseTime", 0),
                Map.entry("options", Map.of("string", Map.ofEntries(
                    Map.entry("type", "string"),
                    Map.entry("value", "string")
                ))),
                Map.entry("serverIdOverride", false),
                Map.entry("servers", "string"),
                Map.entry("servers6s", "string"),
                Map.entry("type", "string"),
                Map.entry("type6", "string"),
                Map.entry("vendorEncapulated", Map.of("string", Map.ofEntries(
                    Map.entry("type", "string"),
                    Map.entry("value", "string")
                )))
            )))
            .enabled(false)
            .build())
        .pathPreferences(Map.of("string", Map.ofEntries(
            Map.entry("paths", Map.ofEntries(
                Map.entry("cost", 0),
                Map.entry("disabled", false),
                Map.entry("gatewayIp", "string"),
                Map.entry("internetAccess", false),
                Map.entry("name", "string"),
                Map.entry("networks", "string"),
                Map.entry("targetIps", "string"),
                Map.entry("type", "string"),
                Map.entry("wanName", "string")
            )),
            Map.entry("strategy", "string")
        )))
        .portConfig(Map.of("string", Map.ofEntries(
            Map.entry("usage", "string"),
            Map.entry("networks", "string"),
            Map.entry("vlanId", 0),
            Map.entry("aggregated", false),
            Map.entry("critical", false),
            Map.entry("description", "string"),
            Map.entry("disableAutoneg", false),
            Map.entry("disabled", false),
            Map.entry("dslType", "string"),
            Map.entry("dslVci", 0),
            Map.entry("dslVpi", 0),
            Map.entry("duplex", "string"),
            Map.entry("ipConfig", Map.ofEntries(
                Map.entry("dns", "string"),
                Map.entry("dnsSuffixes", "string"),
                Map.entry("gateway", "string"),
                Map.entry("ip", "string"),
                Map.entry("netmask", "string"),
                Map.entry("network", "string"),
                Map.entry("poserPassword", "string"),
                Map.entry("pppoeAuth", "string"),
                Map.entry("pppoeUsername", "string"),
                Map.entry("type", "string")
            )),
            Map.entry("lteApn", "string"),
            Map.entry("outerVlanId", 0),
            Map.entry("lteBackup", false),
            Map.entry("ltePassword", "string"),
            Map.entry("lteUsername", "string"),
            Map.entry("mtu", 0),
            Map.entry("wanSourceNat", Map.ofEntries(
                Map.entry("disabled", false),
                Map.entry("natPool", "string")
            )),
            Map.entry("aeLacpForceUp", false),
            Map.entry("lteAuth", "string"),
            Map.entry("poeDisabled", false),
            Map.entry("portNetwork", "string"),
            Map.entry("preserveDscp", false),
            Map.entry("redundant", false),
            Map.entry("rethIdx", 0),
            Map.entry("rethNode", "string"),
            Map.entry("rethNodes", "string"),
            Map.entry("speed", "string"),
            Map.entry("ssrNoVirtualMac", false),
            Map.entry("svrPortRange", "string"),
            Map.entry("trafficShaping", Map.ofEntries(
                Map.entry("classPercentages", 0),
                Map.entry("enabled", false)
            )),
            Map.entry("aeIdx", "string"),
            Map.entry("aeDisableLacp", false),
            Map.entry("vpnPaths", Map.of("string", Map.ofEntries(
                Map.entry("bfdProfile", "string"),
                Map.entry("bfdUseTunnelMode", false),
                Map.entry("preference", 0),
                Map.entry("role", "string"),
                Map.entry("trafficShaping", Map.ofEntries(
                    Map.entry("classPercentages", 0),
                    Map.entry("enabled", false)
                ))
            ))),
            Map.entry("wanArpPolicer", "string"),
            Map.entry("wanExtIp", "string"),
            Map.entry("name", "string"),
            Map.entry("wanType", "string")
        )))
        .portMirroring(GatewayPortMirroringArgs.builder()
            .portMirror(GatewayPortMirroringPortMirrorArgs.builder()
                .familyType("string")
                .ingressPortIds("string")
                .outputPortId("string")
                .rate(0)
                .runLength(0)
                .build())
            .build())
        .routerId("string")
        .routingPolicies(Map.of("string", Map.of("terms", Map.ofEntries(
            Map.entry("action", Map.ofEntries(
                Map.entry("accept", false),
                Map.entry("addCommunities", "string"),
                Map.entry("addTargetVrfs", "string"),
                Map.entry("communities", "string"),
                Map.entry("excludeAsPaths", "string"),
                Map.entry("excludeCommunities", "string"),
                Map.entry("exportCommunitites", "string"),
                Map.entry("localPreference", "string"),
                Map.entry("prependAsPaths", "string")
            )),
            Map.entry("matching", Map.ofEntries(
                Map.entry("asPaths", "string"),
                Map.entry("communities", "string"),
                Map.entry("networks", "string"),
                Map.entry("prefixes", "string"),
                Map.entry("protocols", "string"),
                Map.entry("routeExists", Map.ofEntries(
                    Map.entry("route", "string"),
                    Map.entry("vrfName", "string")
                )),
                Map.entry("vpnNeighborMacs", "string"),
                Map.entry("vpnPathSla", Map.ofEntries(
                    Map.entry("maxJitter", 0),
                    Map.entry("maxLatency", 0),
                    Map.entry("maxLoss", 0)
                )),
                Map.entry("vpnPaths", "string")
            ))
        ))))
        .servicePolicies(GatewayServicePolicyArgs.builder()
            .action("string")
            .appqoe(GatewayServicePolicyAppqoeArgs.builder()
                .enabled(false)
                .build())
            .ewfs(GatewayServicePolicyEwfArgs.builder()
                .alertOnly(false)
                .blockMessage("string")
                .enabled(false)
                .profile("string")
                .build())
            .idp(GatewayServicePolicyIdpArgs.builder()
                .alertOnly(false)
                .enabled(false)
                .idpprofileId("string")
                .profile("string")
                .build())
            .localRouting(false)
            .name("string")
            .pathPreference("string")
            .servicepolicyId("string")
            .services("string")
            .tenants("string")
            .build())
        .bgpConfig(Map.of("string", Map.ofEntries(
            Map.entry("authKey", "string"),
            Map.entry("bfdMinimumInterval", 0),
            Map.entry("bfdMultiplier", 0),
            Map.entry("communities", Map.ofEntries(
                Map.entry("id", "string"),
                Map.entry("localPreference", 0),
                Map.entry("vpnName", "string")
            )),
            Map.entry("disableBfd", false),
            Map.entry("export", "string"),
            Map.entry("exportPolicy", "string"),
            Map.entry("extendedV4Nexthop", false),
            Map.entry("gracefulRestartTime", 0),
            Map.entry("holdTime", 0),
            Map.entry("import", "string"),
            Map.entry("importPolicy", "string"),
            Map.entry("localAs", 0),
            Map.entry("neighborAs", 0),
            Map.entry("neighbors", Map.of("string", Map.ofEntries(
                Map.entry("disabled", false),
                Map.entry("exportPolicy", "string"),
                Map.entry("holdTime", 0),
                Map.entry("importPolicy", "string"),
                Map.entry("multihopTtl", 0),
                Map.entry("neighborAs", 0)
            ))),
            Map.entry("networks", "string"),
            Map.entry("noReadvertiseToOverlay", false),
            Map.entry("tunnelName", "string"),
            Map.entry("type", "string"),
            Map.entry("via", "string"),
            Map.entry("vpnName", "string"),
            Map.entry("wanName", "string")
        )))
        .tunnelConfigs(Map.of("string", Map.ofEntries(
            Map.entry("autoProvision", Map.ofEntries(
                Map.entry("enable", false),
                Map.entry("latlng", Map.ofEntries(
                    Map.entry("lat", 0),
                    Map.entry("lng", 0)
                )),
                Map.entry("primary", Map.ofEntries(
                    Map.entry("numHosts", "string"),
                    Map.entry("wanNames", "string")
                )),
                Map.entry("secondary", Map.ofEntries(
                    Map.entry("numHosts", "string"),
                    Map.entry("wanNames", "string")
                ))
            )),
            Map.entry("ikeLifetime", 0),
            Map.entry("ikeMode", "string"),
            Map.entry("ikeProposals", Map.ofEntries(
                Map.entry("authAlgo", "string"),
                Map.entry("dhGroup", "string"),
                Map.entry("encAlgo", "string")
            )),
            Map.entry("ipsecLifetime", 0),
            Map.entry("ipsecProposals", Map.ofEntries(
                Map.entry("authAlgo", "string"),
                Map.entry("dhGroup", "string"),
                Map.entry("encAlgo", "string")
            )),
            Map.entry("localId", "string"),
            Map.entry("mode", "string"),
            Map.entry("networks", "string"),
            Map.entry("primary", Map.ofEntries(
                Map.entry("hosts", "string"),
                Map.entry("internalIps", "string"),
                Map.entry("probeIps", "string"),
                Map.entry("remoteIds", "string"),
                Map.entry("wanNames", "string")
            )),
            Map.entry("probe", Map.ofEntries(
                Map.entry("interval", 0),
                Map.entry("threshold", 0),
                Map.entry("timeout", 0),
                Map.entry("type", "string")
            )),
            Map.entry("protocol", "string"),
            Map.entry("provider", "string"),
            Map.entry("psk", "string"),
            Map.entry("secondary", Map.ofEntries(
                Map.entry("hosts", "string"),
                Map.entry("internalIps", "string"),
                Map.entry("probeIps", "string"),
                Map.entry("remoteIds", "string"),
                Map.entry("wanNames", "string")
            )),
            Map.entry("version", "string")
        )))
        .tunnelProviderOptions(GatewayTunnelProviderOptionsArgs.builder()
            .jse(GatewayTunnelProviderOptionsJseArgs.builder()
                .name("string")
                .numUsers(0)
                .build())
            .zscaler(GatewayTunnelProviderOptionsZscalerArgs.builder()
                .aupAcceptanceRequired(false)
                .aupExpire(0)
                .aupSslProxy(false)
                .downloadMbps(0)
                .enableAup(false)
                .enableCaution(false)
                .enforceAuthentication(false)
                .name("string")
                .subLocations(GatewayTunnelProviderOptionsZscalerSubLocationArgs.builder()
                    .aupAcceptanceRequired(false)
                    .aupExpire(0)
                    .aupSslProxy(false)
                    .downloadMbps(0)
                    .enableAup(false)
                    .enableCaution(false)
                    .enforceAuthentication(false)
                    .subnets("string")
                    .uploadMbps(0)
                    .build())
                .uploadMbps(0)
                .useXff(false)
                .build())
            .build())
        .vars(Map.of("string", "string"))
        .vrfConfig(GatewayVrfConfigArgs.builder()
            .enabled(false)
            .build())
        .vrfInstances(Map.of("string", Map.of("networks", "string")))
        .x(0)
        .ntpServers("string")
        .build());
    
    gateway_resource = junipermist.device.Gateway("gatewayResource",
        device_id="string",
        site_id="string",
        idp_profiles={
            "string": junipermist.device.GatewayIdpProfilesArgs(
                base_profile="string",
                created_time=0,
                id="string",
                modified_time=0,
                name="string",
                org_id="string",
                overwrites=[junipermist.device.GatewayIdpProfilesOverwriteArgs(
                    action="string",
                    matching=junipermist.device.GatewayIdpProfilesOverwriteMatchingArgs(
                        attack_names=["string"],
                        dst_subnets=["string"],
                        severities=["string"],
                    ),
                    name="string",
                )],
            ),
        },
        dns_servers=["string"],
        oob_ip_config=junipermist.device.GatewayOobIpConfigArgs(
            gateway="string",
            ip="string",
            netmask="string",
            node1=junipermist.device.GatewayOobIpConfigNode1Args(
                gateway="string",
                ip="string",
                netmask="string",
                type="string",
                use_mgmt_vrf=False,
                use_mgmt_vrf_for_host_out=False,
                vlan_id="string",
            ),
            type="string",
            use_mgmt_vrf=False,
            use_mgmt_vrf_for_host_out=False,
            vlan_id="string",
        ),
        dns_suffixes=["string"],
        extra_routes={
            "string": junipermist.device.GatewayExtraRoutesArgs(
                via="string",
            ),
        },
        extra_routes6={
            "string": junipermist.device.GatewayExtraRoutes6Args(
                via="string",
            ),
        },
        additional_config_cmds=["string"],
        ip_configs={
            "string": junipermist.device.GatewayIpConfigsArgs(
                ip="string",
                netmask="string",
                secondary_ips=["string"],
                type="string",
            ),
        },
        managed=False,
        map_id="string",
        msp_id="string",
        name="string",
        networks=[junipermist.device.GatewayNetworkArgs(
            name="string",
            subnet="string",
            id="string",
            gateway="string",
            created_time=0,
            internal_access=junipermist.device.GatewayNetworkInternalAccessArgs(
                enabled=False,
            ),
            internet_access=junipermist.device.GatewayNetworkInternetAccessArgs(
                create_simple_service_policy=False,
                destination_nat={
                    "string": junipermist.device.GatewayNetworkInternetAccessDestinationNatArgs(
                        internal_ip="string",
                        name="string",
                        port=0,
                    ),
                },
                enabled=False,
                restricted=False,
                static_nat={
                    "string": junipermist.device.GatewayNetworkInternetAccessStaticNatArgs(
                        internal_ip="string",
                        name="string",
                        wan_name="string",
                    ),
                },
            ),
            isolation=False,
            modified_time=0,
            gateway6="string",
            org_id="string",
            routed_for_networks=["string"],
            disallow_mist_services=False,
            subnet6="string",
            tenants={
                "string": junipermist.device.GatewayNetworkTenantsArgs(
                    addresses=["string"],
                ),
            },
            vlan_id="string",
            vpn_access={
                "string": junipermist.device.GatewayNetworkVpnAccessArgs(
                    advertised_subnet="string",
                    allow_ping=False,
                    destination_nat={
                        "string": junipermist.device.GatewayNetworkVpnAccessDestinationNatArgs(
                            internal_ip="string",
                            name="string",
                            port=0,
                        ),
                    },
                    nat_pool="string",
                    no_readvertise_to_lan_bgp=False,
                    no_readvertise_to_lan_ospf=False,
                    no_readvertise_to_overlay=False,
                    other_vrfs=["string"],
                    routed=False,
                    source_nat=junipermist.device.GatewayNetworkVpnAccessSourceNatArgs(
                        external_ip="string",
                    ),
                    static_nat={
                        "string": junipermist.device.GatewayNetworkVpnAccessStaticNatArgs(
                            internal_ip="string",
                            name="string",
                            wan_name="string",
                        ),
                    },
                    summarized_subnet="string",
                    summarized_subnet_to_lan_bgp="string",
                    summarized_subnet_to_lan_ospf="string",
                ),
            },
        )],
        notes="string",
        y=0,
        dhcpd_config=junipermist.device.GatewayDhcpdConfigArgs(
            config={
                "string": junipermist.device.GatewayDhcpdConfigConfigArgs(
                    dns_servers=["string"],
                    dns_suffixes=["string"],
                    fixed_bindings={
                        "string": junipermist.device.GatewayDhcpdConfigConfigFixedBindingsArgs(
                            ip="string",
                            name="string",
                        ),
                    },
                    gateway="string",
                    ip_end="string",
                    ip_end6="string",
                    ip_start="string",
                    ip_start6="string",
                    lease_time=0,
                    options={
                        "string": junipermist.device.GatewayDhcpdConfigConfigOptionsArgs(
                            type="string",
                            value="string",
                        ),
                    },
                    server_id_override=False,
                    servers=["string"],
                    servers6s=["string"],
                    type="string",
                    type6="string",
                    vendor_encapulated={
                        "string": junipermist.device.GatewayDhcpdConfigConfigVendorEncapulatedArgs(
                            type="string",
                            value="string",
                        ),
                    },
                ),
            },
            enabled=False,
        ),
        path_preferences={
            "string": junipermist.device.GatewayPathPreferencesArgs(
                paths=[junipermist.device.GatewayPathPreferencesPathArgs(
                    cost=0,
                    disabled=False,
                    gateway_ip="string",
                    internet_access=False,
                    name="string",
                    networks=["string"],
                    target_ips=["string"],
                    type="string",
                    wan_name="string",
                )],
                strategy="string",
            ),
        },
        port_config={
            "string": junipermist.device.GatewayPortConfigArgs(
                usage="string",
                networks=["string"],
                vlan_id=0,
                aggregated=False,
                critical=False,
                description="string",
                disable_autoneg=False,
                disabled=False,
                dsl_type="string",
                dsl_vci=0,
                dsl_vpi=0,
                duplex="string",
                ip_config=junipermist.device.GatewayPortConfigIpConfigArgs(
                    dns=["string"],
                    dns_suffixes=["string"],
                    gateway="string",
                    ip="string",
                    netmask="string",
                    network="string",
                    poser_password="string",
                    pppoe_auth="string",
                    pppoe_username="string",
                    type="string",
                ),
                lte_apn="string",
                outer_vlan_id=0,
                lte_backup=False,
                lte_password="string",
                lte_username="string",
                mtu=0,
                wan_source_nat=junipermist.device.GatewayPortConfigWanSourceNatArgs(
                    disabled=False,
                    nat_pool="string",
                ),
                ae_lacp_force_up=False,
                lte_auth="string",
                poe_disabled=False,
                port_network="string",
                preserve_dscp=False,
                redundant=False,
                reth_idx=0,
                reth_node="string",
                reth_nodes=["string"],
                speed="string",
                ssr_no_virtual_mac=False,
                svr_port_range="string",
                traffic_shaping=junipermist.device.GatewayPortConfigTrafficShapingArgs(
                    class_percentages=[0],
                    enabled=False,
                ),
                ae_idx="string",
                ae_disable_lacp=False,
                vpn_paths={
                    "string": junipermist.device.GatewayPortConfigVpnPathsArgs(
                        bfd_profile="string",
                        bfd_use_tunnel_mode=False,
                        preference=0,
                        role="string",
                        traffic_shaping=junipermist.device.GatewayPortConfigVpnPathsTrafficShapingArgs(
                            class_percentages=[0],
                            enabled=False,
                        ),
                    ),
                },
                wan_arp_policer="string",
                wan_ext_ip="string",
                name="string",
                wan_type="string",
            ),
        },
        port_mirroring=junipermist.device.GatewayPortMirroringArgs(
            port_mirror=junipermist.device.GatewayPortMirroringPortMirrorArgs(
                family_type="string",
                ingress_port_ids=["string"],
                output_port_id="string",
                rate=0,
                run_length=0,
            ),
        ),
        router_id="string",
        routing_policies={
            "string": junipermist.device.GatewayRoutingPoliciesArgs(
                terms=[junipermist.device.GatewayRoutingPoliciesTermArgs(
                    action=junipermist.device.GatewayRoutingPoliciesTermActionArgs(
                        accept=False,
                        add_communities=["string"],
                        add_target_vrfs=["string"],
                        communities=["string"],
                        exclude_as_paths=["string"],
                        exclude_communities=["string"],
                        export_communitites=["string"],
                        local_preference="string",
                        prepend_as_paths=["string"],
                    ),
                    matching=junipermist.device.GatewayRoutingPoliciesTermMatchingArgs(
                        as_paths=["string"],
                        communities=["string"],
                        networks=["string"],
                        prefixes=["string"],
                        protocols=["string"],
                        route_exists=junipermist.device.GatewayRoutingPoliciesTermMatchingRouteExistsArgs(
                            route="string",
                            vrf_name="string",
                        ),
                        vpn_neighbor_macs=["string"],
                        vpn_path_sla=junipermist.device.GatewayRoutingPoliciesTermMatchingVpnPathSlaArgs(
                            max_jitter=0,
                            max_latency=0,
                            max_loss=0,
                        ),
                        vpn_paths=["string"],
                    ),
                )],
            ),
        },
        service_policies=[junipermist.device.GatewayServicePolicyArgs(
            action="string",
            appqoe=junipermist.device.GatewayServicePolicyAppqoeArgs(
                enabled=False,
            ),
            ewfs=[junipermist.device.GatewayServicePolicyEwfArgs(
                alert_only=False,
                block_message="string",
                enabled=False,
                profile="string",
            )],
            idp=junipermist.device.GatewayServicePolicyIdpArgs(
                alert_only=False,
                enabled=False,
                idpprofile_id="string",
                profile="string",
            ),
            local_routing=False,
            name="string",
            path_preference="string",
            servicepolicy_id="string",
            services=["string"],
            tenants=["string"],
        )],
        bgp_config={
            "string": junipermist.device.GatewayBgpConfigArgs(
                auth_key="string",
                bfd_minimum_interval=0,
                bfd_multiplier=0,
                communities=[junipermist.device.GatewayBgpConfigCommunityArgs(
                    id="string",
                    local_preference=0,
                    vpn_name="string",
                )],
                disable_bfd=False,
                export="string",
                export_policy="string",
                extended_v4_nexthop=False,
                graceful_restart_time=0,
                hold_time=0,
                import_="string",
                import_policy="string",
                local_as=0,
                neighbor_as=0,
                neighbors={
                    "string": junipermist.device.GatewayBgpConfigNeighborsArgs(
                        disabled=False,
                        export_policy="string",
                        hold_time=0,
                        import_policy="string",
                        multihop_ttl=0,
                        neighbor_as=0,
                    ),
                },
                networks=["string"],
                no_readvertise_to_overlay=False,
                tunnel_name="string",
                type="string",
                via="string",
                vpn_name="string",
                wan_name="string",
            ),
        },
        tunnel_configs={
            "string": junipermist.device.GatewayTunnelConfigsArgs(
                auto_provision=junipermist.device.GatewayTunnelConfigsAutoProvisionArgs(
                    enable=False,
                    latlng=junipermist.device.GatewayTunnelConfigsAutoProvisionLatlngArgs(
                        lat=0,
                        lng=0,
                    ),
                    primary=junipermist.device.GatewayTunnelConfigsAutoProvisionPrimaryArgs(
                        num_hosts="string",
                        wan_names=["string"],
                    ),
                    secondary=junipermist.device.GatewayTunnelConfigsAutoProvisionSecondaryArgs(
                        num_hosts="string",
                        wan_names=["string"],
                    ),
                ),
                ike_lifetime=0,
                ike_mode="string",
                ike_proposals=[junipermist.device.GatewayTunnelConfigsIkeProposalArgs(
                    auth_algo="string",
                    dh_group="string",
                    enc_algo="string",
                )],
                ipsec_lifetime=0,
                ipsec_proposals=[junipermist.device.GatewayTunnelConfigsIpsecProposalArgs(
                    auth_algo="string",
                    dh_group="string",
                    enc_algo="string",
                )],
                local_id="string",
                mode="string",
                networks=["string"],
                primary=junipermist.device.GatewayTunnelConfigsPrimaryArgs(
                    hosts=["string"],
                    internal_ips=["string"],
                    probe_ips=["string"],
                    remote_ids=["string"],
                    wan_names=["string"],
                ),
                probe=junipermist.device.GatewayTunnelConfigsProbeArgs(
                    interval=0,
                    threshold=0,
                    timeout=0,
                    type="string",
                ),
                protocol="string",
                provider="string",
                psk="string",
                secondary=junipermist.device.GatewayTunnelConfigsSecondaryArgs(
                    hosts=["string"],
                    internal_ips=["string"],
                    probe_ips=["string"],
                    remote_ids=["string"],
                    wan_names=["string"],
                ),
                version="string",
            ),
        },
        tunnel_provider_options=junipermist.device.GatewayTunnelProviderOptionsArgs(
            jse=junipermist.device.GatewayTunnelProviderOptionsJseArgs(
                name="string",
                num_users=0,
            ),
            zscaler=junipermist.device.GatewayTunnelProviderOptionsZscalerArgs(
                aup_acceptance_required=False,
                aup_expire=0,
                aup_ssl_proxy=False,
                download_mbps=0,
                enable_aup=False,
                enable_caution=False,
                enforce_authentication=False,
                name="string",
                sub_locations=[junipermist.device.GatewayTunnelProviderOptionsZscalerSubLocationArgs(
                    aup_acceptance_required=False,
                    aup_expire=0,
                    aup_ssl_proxy=False,
                    download_mbps=0,
                    enable_aup=False,
                    enable_caution=False,
                    enforce_authentication=False,
                    subnets=["string"],
                    upload_mbps=0,
                )],
                upload_mbps=0,
                use_xff=False,
            ),
        ),
        vars={
            "string": "string",
        },
        vrf_config=junipermist.device.GatewayVrfConfigArgs(
            enabled=False,
        ),
        vrf_instances={
            "string": junipermist.device.GatewayVrfInstancesArgs(
                networks=["string"],
            ),
        },
        x=0,
        ntp_servers=["string"])
    
    const gatewayResource = new junipermist.device.Gateway("gatewayResource", {
        deviceId: "string",
        siteId: "string",
        idpProfiles: {
            string: {
                baseProfile: "string",
                createdTime: 0,
                id: "string",
                modifiedTime: 0,
                name: "string",
                orgId: "string",
                overwrites: [{
                    action: "string",
                    matching: {
                        attackNames: ["string"],
                        dstSubnets: ["string"],
                        severities: ["string"],
                    },
                    name: "string",
                }],
            },
        },
        dnsServers: ["string"],
        oobIpConfig: {
            gateway: "string",
            ip: "string",
            netmask: "string",
            node1: {
                gateway: "string",
                ip: "string",
                netmask: "string",
                type: "string",
                useMgmtVrf: false,
                useMgmtVrfForHostOut: false,
                vlanId: "string",
            },
            type: "string",
            useMgmtVrf: false,
            useMgmtVrfForHostOut: false,
            vlanId: "string",
        },
        dnsSuffixes: ["string"],
        extraRoutes: {
            string: {
                via: "string",
            },
        },
        extraRoutes6: {
            string: {
                via: "string",
            },
        },
        additionalConfigCmds: ["string"],
        ipConfigs: {
            string: {
                ip: "string",
                netmask: "string",
                secondaryIps: ["string"],
                type: "string",
            },
        },
        managed: false,
        mapId: "string",
        mspId: "string",
        name: "string",
        networks: [{
            name: "string",
            subnet: "string",
            id: "string",
            gateway: "string",
            createdTime: 0,
            internalAccess: {
                enabled: false,
            },
            internetAccess: {
                createSimpleServicePolicy: false,
                destinationNat: {
                    string: {
                        internalIp: "string",
                        name: "string",
                        port: 0,
                    },
                },
                enabled: false,
                restricted: false,
                staticNat: {
                    string: {
                        internalIp: "string",
                        name: "string",
                        wanName: "string",
                    },
                },
            },
            isolation: false,
            modifiedTime: 0,
            gateway6: "string",
            orgId: "string",
            routedForNetworks: ["string"],
            disallowMistServices: false,
            subnet6: "string",
            tenants: {
                string: {
                    addresses: ["string"],
                },
            },
            vlanId: "string",
            vpnAccess: {
                string: {
                    advertisedSubnet: "string",
                    allowPing: false,
                    destinationNat: {
                        string: {
                            internalIp: "string",
                            name: "string",
                            port: 0,
                        },
                    },
                    natPool: "string",
                    noReadvertiseToLanBgp: false,
                    noReadvertiseToLanOspf: false,
                    noReadvertiseToOverlay: false,
                    otherVrfs: ["string"],
                    routed: false,
                    sourceNat: {
                        externalIp: "string",
                    },
                    staticNat: {
                        string: {
                            internalIp: "string",
                            name: "string",
                            wanName: "string",
                        },
                    },
                    summarizedSubnet: "string",
                    summarizedSubnetToLanBgp: "string",
                    summarizedSubnetToLanOspf: "string",
                },
            },
        }],
        notes: "string",
        y: 0,
        dhcpdConfig: {
            config: {
                string: {
                    dnsServers: ["string"],
                    dnsSuffixes: ["string"],
                    fixedBindings: {
                        string: {
                            ip: "string",
                            name: "string",
                        },
                    },
                    gateway: "string",
                    ipEnd: "string",
                    ipEnd6: "string",
                    ipStart: "string",
                    ipStart6: "string",
                    leaseTime: 0,
                    options: {
                        string: {
                            type: "string",
                            value: "string",
                        },
                    },
                    serverIdOverride: false,
                    servers: ["string"],
                    servers6s: ["string"],
                    type: "string",
                    type6: "string",
                    vendorEncapulated: {
                        string: {
                            type: "string",
                            value: "string",
                        },
                    },
                },
            },
            enabled: false,
        },
        pathPreferences: {
            string: {
                paths: [{
                    cost: 0,
                    disabled: false,
                    gatewayIp: "string",
                    internetAccess: false,
                    name: "string",
                    networks: ["string"],
                    targetIps: ["string"],
                    type: "string",
                    wanName: "string",
                }],
                strategy: "string",
            },
        },
        portConfig: {
            string: {
                usage: "string",
                networks: ["string"],
                vlanId: 0,
                aggregated: false,
                critical: false,
                description: "string",
                disableAutoneg: false,
                disabled: false,
                dslType: "string",
                dslVci: 0,
                dslVpi: 0,
                duplex: "string",
                ipConfig: {
                    dns: ["string"],
                    dnsSuffixes: ["string"],
                    gateway: "string",
                    ip: "string",
                    netmask: "string",
                    network: "string",
                    poserPassword: "string",
                    pppoeAuth: "string",
                    pppoeUsername: "string",
                    type: "string",
                },
                lteApn: "string",
                outerVlanId: 0,
                lteBackup: false,
                ltePassword: "string",
                lteUsername: "string",
                mtu: 0,
                wanSourceNat: {
                    disabled: false,
                    natPool: "string",
                },
                aeLacpForceUp: false,
                lteAuth: "string",
                poeDisabled: false,
                portNetwork: "string",
                preserveDscp: false,
                redundant: false,
                rethIdx: 0,
                rethNode: "string",
                rethNodes: ["string"],
                speed: "string",
                ssrNoVirtualMac: false,
                svrPortRange: "string",
                trafficShaping: {
                    classPercentages: [0],
                    enabled: false,
                },
                aeIdx: "string",
                aeDisableLacp: false,
                vpnPaths: {
                    string: {
                        bfdProfile: "string",
                        bfdUseTunnelMode: false,
                        preference: 0,
                        role: "string",
                        trafficShaping: {
                            classPercentages: [0],
                            enabled: false,
                        },
                    },
                },
                wanArpPolicer: "string",
                wanExtIp: "string",
                name: "string",
                wanType: "string",
            },
        },
        portMirroring: {
            portMirror: {
                familyType: "string",
                ingressPortIds: ["string"],
                outputPortId: "string",
                rate: 0,
                runLength: 0,
            },
        },
        routerId: "string",
        routingPolicies: {
            string: {
                terms: [{
                    action: {
                        accept: false,
                        addCommunities: ["string"],
                        addTargetVrfs: ["string"],
                        communities: ["string"],
                        excludeAsPaths: ["string"],
                        excludeCommunities: ["string"],
                        exportCommunitites: ["string"],
                        localPreference: "string",
                        prependAsPaths: ["string"],
                    },
                    matching: {
                        asPaths: ["string"],
                        communities: ["string"],
                        networks: ["string"],
                        prefixes: ["string"],
                        protocols: ["string"],
                        routeExists: {
                            route: "string",
                            vrfName: "string",
                        },
                        vpnNeighborMacs: ["string"],
                        vpnPathSla: {
                            maxJitter: 0,
                            maxLatency: 0,
                            maxLoss: 0,
                        },
                        vpnPaths: ["string"],
                    },
                }],
            },
        },
        servicePolicies: [{
            action: "string",
            appqoe: {
                enabled: false,
            },
            ewfs: [{
                alertOnly: false,
                blockMessage: "string",
                enabled: false,
                profile: "string",
            }],
            idp: {
                alertOnly: false,
                enabled: false,
                idpprofileId: "string",
                profile: "string",
            },
            localRouting: false,
            name: "string",
            pathPreference: "string",
            servicepolicyId: "string",
            services: ["string"],
            tenants: ["string"],
        }],
        bgpConfig: {
            string: {
                authKey: "string",
                bfdMinimumInterval: 0,
                bfdMultiplier: 0,
                communities: [{
                    id: "string",
                    localPreference: 0,
                    vpnName: "string",
                }],
                disableBfd: false,
                "export": "string",
                exportPolicy: "string",
                extendedV4Nexthop: false,
                gracefulRestartTime: 0,
                holdTime: 0,
                "import": "string",
                importPolicy: "string",
                localAs: 0,
                neighborAs: 0,
                neighbors: {
                    string: {
                        disabled: false,
                        exportPolicy: "string",
                        holdTime: 0,
                        importPolicy: "string",
                        multihopTtl: 0,
                        neighborAs: 0,
                    },
                },
                networks: ["string"],
                noReadvertiseToOverlay: false,
                tunnelName: "string",
                type: "string",
                via: "string",
                vpnName: "string",
                wanName: "string",
            },
        },
        tunnelConfigs: {
            string: {
                autoProvision: {
                    enable: false,
                    latlng: {
                        lat: 0,
                        lng: 0,
                    },
                    primary: {
                        numHosts: "string",
                        wanNames: ["string"],
                    },
                    secondary: {
                        numHosts: "string",
                        wanNames: ["string"],
                    },
                },
                ikeLifetime: 0,
                ikeMode: "string",
                ikeProposals: [{
                    authAlgo: "string",
                    dhGroup: "string",
                    encAlgo: "string",
                }],
                ipsecLifetime: 0,
                ipsecProposals: [{
                    authAlgo: "string",
                    dhGroup: "string",
                    encAlgo: "string",
                }],
                localId: "string",
                mode: "string",
                networks: ["string"],
                primary: {
                    hosts: ["string"],
                    internalIps: ["string"],
                    probeIps: ["string"],
                    remoteIds: ["string"],
                    wanNames: ["string"],
                },
                probe: {
                    interval: 0,
                    threshold: 0,
                    timeout: 0,
                    type: "string",
                },
                protocol: "string",
                provider: "string",
                psk: "string",
                secondary: {
                    hosts: ["string"],
                    internalIps: ["string"],
                    probeIps: ["string"],
                    remoteIds: ["string"],
                    wanNames: ["string"],
                },
                version: "string",
            },
        },
        tunnelProviderOptions: {
            jse: {
                name: "string",
                numUsers: 0,
            },
            zscaler: {
                aupAcceptanceRequired: false,
                aupExpire: 0,
                aupSslProxy: false,
                downloadMbps: 0,
                enableAup: false,
                enableCaution: false,
                enforceAuthentication: false,
                name: "string",
                subLocations: [{
                    aupAcceptanceRequired: false,
                    aupExpire: 0,
                    aupSslProxy: false,
                    downloadMbps: 0,
                    enableAup: false,
                    enableCaution: false,
                    enforceAuthentication: false,
                    subnets: ["string"],
                    uploadMbps: 0,
                }],
                uploadMbps: 0,
                useXff: false,
            },
        },
        vars: {
            string: "string",
        },
        vrfConfig: {
            enabled: false,
        },
        vrfInstances: {
            string: {
                networks: ["string"],
            },
        },
        x: 0,
        ntpServers: ["string"],
    });
    
    type: junipermist:device:Gateway
    properties:
        additionalConfigCmds:
            - string
        bgpConfig:
            string:
                authKey: string
                bfdMinimumInterval: 0
                bfdMultiplier: 0
                communities:
                    - id: string
                      localPreference: 0
                      vpnName: string
                disableBfd: false
                export: string
                exportPolicy: string
                extendedV4Nexthop: false
                gracefulRestartTime: 0
                holdTime: 0
                import: string
                importPolicy: string
                localAs: 0
                neighborAs: 0
                neighbors:
                    string:
                        disabled: false
                        exportPolicy: string
                        holdTime: 0
                        importPolicy: string
                        multihopTtl: 0
                        neighborAs: 0
                networks:
                    - string
                noReadvertiseToOverlay: false
                tunnelName: string
                type: string
                via: string
                vpnName: string
                wanName: string
        deviceId: string
        dhcpdConfig:
            config:
                string:
                    dnsServers:
                        - string
                    dnsSuffixes:
                        - string
                    fixedBindings:
                        string:
                            ip: string
                            name: string
                    gateway: string
                    ipEnd: string
                    ipEnd6: string
                    ipStart: string
                    ipStart6: string
                    leaseTime: 0
                    options:
                        string:
                            type: string
                            value: string
                    serverIdOverride: false
                    servers:
                        - string
                    servers6s:
                        - string
                    type: string
                    type6: string
                    vendorEncapulated:
                        string:
                            type: string
                            value: string
            enabled: false
        dnsServers:
            - string
        dnsSuffixes:
            - string
        extraRoutes:
            string:
                via: string
        extraRoutes6:
            string:
                via: string
        idpProfiles:
            string:
                baseProfile: string
                createdTime: 0
                id: string
                modifiedTime: 0
                name: string
                orgId: string
                overwrites:
                    - action: string
                      matching:
                        attackNames:
                            - string
                        dstSubnets:
                            - string
                        severities:
                            - string
                      name: string
        ipConfigs:
            string:
                ip: string
                netmask: string
                secondaryIps:
                    - string
                type: string
        managed: false
        mapId: string
        mspId: string
        name: string
        networks:
            - createdTime: 0
              disallowMistServices: false
              gateway: string
              gateway6: string
              id: string
              internalAccess:
                enabled: false
              internetAccess:
                createSimpleServicePolicy: false
                destinationNat:
                    string:
                        internalIp: string
                        name: string
                        port: 0
                enabled: false
                restricted: false
                staticNat:
                    string:
                        internalIp: string
                        name: string
                        wanName: string
              isolation: false
              modifiedTime: 0
              name: string
              orgId: string
              routedForNetworks:
                - string
              subnet: string
              subnet6: string
              tenants:
                string:
                    addresses:
                        - string
              vlanId: string
              vpnAccess:
                string:
                    advertisedSubnet: string
                    allowPing: false
                    destinationNat:
                        string:
                            internalIp: string
                            name: string
                            port: 0
                    natPool: string
                    noReadvertiseToLanBgp: false
                    noReadvertiseToLanOspf: false
                    noReadvertiseToOverlay: false
                    otherVrfs:
                        - string
                    routed: false
                    sourceNat:
                        externalIp: string
                    staticNat:
                        string:
                            internalIp: string
                            name: string
                            wanName: string
                    summarizedSubnet: string
                    summarizedSubnetToLanBgp: string
                    summarizedSubnetToLanOspf: string
        notes: string
        ntpServers:
            - string
        oobIpConfig:
            gateway: string
            ip: string
            netmask: string
            node1:
                gateway: string
                ip: string
                netmask: string
                type: string
                useMgmtVrf: false
                useMgmtVrfForHostOut: false
                vlanId: string
            type: string
            useMgmtVrf: false
            useMgmtVrfForHostOut: false
            vlanId: string
        pathPreferences:
            string:
                paths:
                    - cost: 0
                      disabled: false
                      gatewayIp: string
                      internetAccess: false
                      name: string
                      networks:
                        - string
                      targetIps:
                        - string
                      type: string
                      wanName: string
                strategy: string
        portConfig:
            string:
                aeDisableLacp: false
                aeIdx: string
                aeLacpForceUp: false
                aggregated: false
                critical: false
                description: string
                disableAutoneg: false
                disabled: false
                dslType: string
                dslVci: 0
                dslVpi: 0
                duplex: string
                ipConfig:
                    dns:
                        - string
                    dnsSuffixes:
                        - string
                    gateway: string
                    ip: string
                    netmask: string
                    network: string
                    poserPassword: string
                    pppoeAuth: string
                    pppoeUsername: string
                    type: string
                lteApn: string
                lteAuth: string
                lteBackup: false
                ltePassword: string
                lteUsername: string
                mtu: 0
                name: string
                networks:
                    - string
                outerVlanId: 0
                poeDisabled: false
                portNetwork: string
                preserveDscp: false
                redundant: false
                rethIdx: 0
                rethNode: string
                rethNodes:
                    - string
                speed: string
                ssrNoVirtualMac: false
                svrPortRange: string
                trafficShaping:
                    classPercentages:
                        - 0
                    enabled: false
                usage: string
                vlanId: 0
                vpnPaths:
                    string:
                        bfdProfile: string
                        bfdUseTunnelMode: false
                        preference: 0
                        role: string
                        trafficShaping:
                            classPercentages:
                                - 0
                            enabled: false
                wanArpPolicer: string
                wanExtIp: string
                wanSourceNat:
                    disabled: false
                    natPool: string
                wanType: string
        portMirroring:
            portMirror:
                familyType: string
                ingressPortIds:
                    - string
                outputPortId: string
                rate: 0
                runLength: 0
        routerId: string
        routingPolicies:
            string:
                terms:
                    - action:
                        accept: false
                        addCommunities:
                            - string
                        addTargetVrfs:
                            - string
                        communities:
                            - string
                        excludeAsPaths:
                            - string
                        excludeCommunities:
                            - string
                        exportCommunitites:
                            - string
                        localPreference: string
                        prependAsPaths:
                            - string
                      matching:
                        asPaths:
                            - string
                        communities:
                            - string
                        networks:
                            - string
                        prefixes:
                            - string
                        protocols:
                            - string
                        routeExists:
                            route: string
                            vrfName: string
                        vpnNeighborMacs:
                            - string
                        vpnPathSla:
                            maxJitter: 0
                            maxLatency: 0
                            maxLoss: 0
                        vpnPaths:
                            - string
        servicePolicies:
            - action: string
              appqoe:
                enabled: false
              ewfs:
                - alertOnly: false
                  blockMessage: string
                  enabled: false
                  profile: string
              idp:
                alertOnly: false
                enabled: false
                idpprofileId: string
                profile: string
              localRouting: false
              name: string
              pathPreference: string
              servicepolicyId: string
              services:
                - string
              tenants:
                - string
        siteId: string
        tunnelConfigs:
            string:
                autoProvision:
                    enable: false
                    latlng:
                        lat: 0
                        lng: 0
                    primary:
                        numHosts: string
                        wanNames:
                            - string
                    secondary:
                        numHosts: string
                        wanNames:
                            - string
                ikeLifetime: 0
                ikeMode: string
                ikeProposals:
                    - authAlgo: string
                      dhGroup: string
                      encAlgo: string
                ipsecLifetime: 0
                ipsecProposals:
                    - authAlgo: string
                      dhGroup: string
                      encAlgo: string
                localId: string
                mode: string
                networks:
                    - string
                primary:
                    hosts:
                        - string
                    internalIps:
                        - string
                    probeIps:
                        - string
                    remoteIds:
                        - string
                    wanNames:
                        - string
                probe:
                    interval: 0
                    threshold: 0
                    timeout: 0
                    type: string
                protocol: string
                provider: string
                psk: string
                secondary:
                    hosts:
                        - string
                    internalIps:
                        - string
                    probeIps:
                        - string
                    remoteIds:
                        - string
                    wanNames:
                        - string
                version: string
        tunnelProviderOptions:
            jse:
                name: string
                numUsers: 0
            zscaler:
                aupAcceptanceRequired: false
                aupExpire: 0
                aupSslProxy: false
                downloadMbps: 0
                enableAup: false
                enableCaution: false
                enforceAuthentication: false
                name: string
                subLocations:
                    - aupAcceptanceRequired: false
                      aupExpire: 0
                      aupSslProxy: false
                      downloadMbps: 0
                      enableAup: false
                      enableCaution: false
                      enforceAuthentication: false
                      subnets:
                        - string
                      uploadMbps: 0
                uploadMbps: 0
                useXff: false
        vars:
            string: string
        vrfConfig:
            enabled: false
        vrfInstances:
            string:
                networks:
                    - string
        x: 0
        "y": 0
    

    Gateway Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Gateway resource accepts the following input properties:

    DeviceId string
    SiteId string
    AdditionalConfigCmds List<string>
    additional CLI commands to append to the generated Junos config Note: no check is done
    BgpConfig Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayBgpConfigArgs>
    DhcpdConfig Pulumi.JuniperMist.Device.Inputs.GatewayDhcpdConfig
    DnsServers List<string>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    DnsSuffixes List<string>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    ExtraRoutes Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayExtraRoutesArgs>
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    ExtraRoutes6 Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayExtraRoutes6Args>
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    IdpProfiles Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayIdpProfilesArgs>
    Property key is the profile name
    IpConfigs Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayIpConfigsArgs>
    Property key is the network name
    Managed bool
    MapId string
    map where the device belongs to
    MspId string
    Name string
    Networks List<Pulumi.JuniperMist.Device.Inputs.GatewayNetwork>
    Notes string
    NtpServers List<string>
    OobIpConfig Pulumi.JuniperMist.Device.Inputs.GatewayOobIpConfig
    out-of-band (vme/em0/fxp0) IP config
    PathPreferences Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayPathPreferencesArgs>
    Property key is the path name
    PortConfig Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigArgs>
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    PortMirroring Pulumi.JuniperMist.Device.Inputs.GatewayPortMirroring
    RouterId string
    auto assigned if not set
    RoutingPolicies Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesArgs>
    Property key is the routing policy name
    ServicePolicies List<Pulumi.JuniperMist.Device.Inputs.GatewayServicePolicy>
    TunnelConfigs Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsArgs>
    Property key is the tunnel name
    TunnelProviderOptions Pulumi.JuniperMist.Device.Inputs.GatewayTunnelProviderOptions
    Vars Dictionary<string, string>
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    VrfConfig Pulumi.JuniperMist.Device.Inputs.GatewayVrfConfig
    VrfInstances Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayVrfInstancesArgs>
    Property key is the network name
    X double
    x in pixel
    Y double
    y in pixel
    DeviceId string
    SiteId string
    AdditionalConfigCmds []string
    additional CLI commands to append to the generated Junos config Note: no check is done
    BgpConfig map[string]GatewayBgpConfigArgs
    DhcpdConfig GatewayDhcpdConfigArgs
    DnsServers []string
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    DnsSuffixes []string
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    ExtraRoutes map[string]GatewayExtraRoutesArgs
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    ExtraRoutes6 map[string]GatewayExtraRoutes6Args
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    IdpProfiles map[string]GatewayIdpProfilesArgs
    Property key is the profile name
    IpConfigs map[string]GatewayIpConfigsArgs
    Property key is the network name
    Managed bool
    MapId string
    map where the device belongs to
    MspId string
    Name string
    Networks []GatewayNetworkArgs
    Notes string
    NtpServers []string
    OobIpConfig GatewayOobIpConfigArgs
    out-of-band (vme/em0/fxp0) IP config
    PathPreferences map[string]GatewayPathPreferencesArgs
    Property key is the path name
    PortConfig map[string]GatewayPortConfigArgs
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    PortMirroring GatewayPortMirroringArgs
    RouterId string
    auto assigned if not set
    RoutingPolicies map[string]GatewayRoutingPoliciesArgs
    Property key is the routing policy name
    ServicePolicies []GatewayServicePolicyArgs
    TunnelConfigs map[string]GatewayTunnelConfigsArgs
    Property key is the tunnel name
    TunnelProviderOptions GatewayTunnelProviderOptionsArgs
    Vars map[string]string
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    VrfConfig GatewayVrfConfigArgs
    VrfInstances map[string]GatewayVrfInstancesArgs
    Property key is the network name
    X float64
    x in pixel
    Y float64
    y in pixel
    deviceId String
    siteId String
    additionalConfigCmds List<String>
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgpConfig Map<String,GatewayBgpConfigArgs>
    dhcpdConfig GatewayDhcpdConfig
    dnsServers List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dnsSuffixes List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extraRoutes Map<String,GatewayExtraRoutesArgs>
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extraRoutes6 Map<String,GatewayExtraRoutes6Args>
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idpProfiles Map<String,GatewayIdpProfilesArgs>
    Property key is the profile name
    ipConfigs Map<String,GatewayIpConfigsArgs>
    Property key is the network name
    managed Boolean
    mapId String
    map where the device belongs to
    mspId String
    name String
    networks List<GatewayNetwork>
    notes String
    ntpServers List<String>
    oobIpConfig GatewayOobIpConfig
    out-of-band (vme/em0/fxp0) IP config
    pathPreferences Map<String,GatewayPathPreferencesArgs>
    Property key is the path name
    portConfig Map<String,GatewayPortConfigArgs>
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    portMirroring GatewayPortMirroring
    routerId String
    auto assigned if not set
    routingPolicies Map<String,GatewayRoutingPoliciesArgs>
    Property key is the routing policy name
    servicePolicies List<GatewayServicePolicy>
    tunnelConfigs Map<String,GatewayTunnelConfigsArgs>
    Property key is the tunnel name
    tunnelProviderOptions GatewayTunnelProviderOptions
    vars Map<String,String>
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrfConfig GatewayVrfConfig
    vrfInstances Map<String,GatewayVrfInstancesArgs>
    Property key is the network name
    x Double
    x in pixel
    y Double
    y in pixel
    deviceId string
    siteId string
    additionalConfigCmds string[]
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgpConfig {[key: string]: GatewayBgpConfigArgs}
    dhcpdConfig GatewayDhcpdConfig
    dnsServers string[]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dnsSuffixes string[]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extraRoutes {[key: string]: GatewayExtraRoutesArgs}
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extraRoutes6 {[key: string]: GatewayExtraRoutes6Args}
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idpProfiles {[key: string]: GatewayIdpProfilesArgs}
    Property key is the profile name
    ipConfigs {[key: string]: GatewayIpConfigsArgs}
    Property key is the network name
    managed boolean
    mapId string
    map where the device belongs to
    mspId string
    name string
    networks GatewayNetwork[]
    notes string
    ntpServers string[]
    oobIpConfig GatewayOobIpConfig
    out-of-band (vme/em0/fxp0) IP config
    pathPreferences {[key: string]: GatewayPathPreferencesArgs}
    Property key is the path name
    portConfig {[key: string]: GatewayPortConfigArgs}
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    portMirroring GatewayPortMirroring
    routerId string
    auto assigned if not set
    routingPolicies {[key: string]: GatewayRoutingPoliciesArgs}
    Property key is the routing policy name
    servicePolicies GatewayServicePolicy[]
    tunnelConfigs {[key: string]: GatewayTunnelConfigsArgs}
    Property key is the tunnel name
    tunnelProviderOptions GatewayTunnelProviderOptions
    vars {[key: string]: string}
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrfConfig GatewayVrfConfig
    vrfInstances {[key: string]: GatewayVrfInstancesArgs}
    Property key is the network name
    x number
    x in pixel
    y number
    y in pixel
    device_id str
    site_id str
    additional_config_cmds Sequence[str]
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgp_config Mapping[str, GatewayBgpConfigArgs]
    dhcpd_config GatewayDhcpdConfigArgs
    dns_servers Sequence[str]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dns_suffixes Sequence[str]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extra_routes Mapping[str, GatewayExtraRoutesArgs]
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extra_routes6 Mapping[str, GatewayExtraRoutes6Args]
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idp_profiles Mapping[str, GatewayIdpProfilesArgs]
    Property key is the profile name
    ip_configs Mapping[str, GatewayIpConfigsArgs]
    Property key is the network name
    managed bool
    map_id str
    map where the device belongs to
    msp_id str
    name str
    networks Sequence[GatewayNetworkArgs]
    notes str
    ntp_servers Sequence[str]
    oob_ip_config GatewayOobIpConfigArgs
    out-of-band (vme/em0/fxp0) IP config
    path_preferences Mapping[str, GatewayPathPreferencesArgs]
    Property key is the path name
    port_config Mapping[str, GatewayPortConfigArgs]
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    port_mirroring GatewayPortMirroringArgs
    router_id str
    auto assigned if not set
    routing_policies Mapping[str, GatewayRoutingPoliciesArgs]
    Property key is the routing policy name
    service_policies Sequence[GatewayServicePolicyArgs]
    tunnel_configs Mapping[str, GatewayTunnelConfigsArgs]
    Property key is the tunnel name
    tunnel_provider_options GatewayTunnelProviderOptionsArgs
    vars Mapping[str, str]
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrf_config GatewayVrfConfigArgs
    vrf_instances Mapping[str, GatewayVrfInstancesArgs]
    Property key is the network name
    x float
    x in pixel
    y float
    y in pixel
    deviceId String
    siteId String
    additionalConfigCmds List<String>
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgpConfig Map<Property Map>
    dhcpdConfig Property Map
    dnsServers List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dnsSuffixes List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extraRoutes Map<Property Map>
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extraRoutes6 Map<Property Map>
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idpProfiles Map<Property Map>
    Property key is the profile name
    ipConfigs Map<Property Map>
    Property key is the network name
    managed Boolean
    mapId String
    map where the device belongs to
    mspId String
    name String
    networks List<Property Map>
    notes String
    ntpServers List<String>
    oobIpConfig Property Map
    out-of-band (vme/em0/fxp0) IP config
    pathPreferences Map<Property Map>
    Property key is the path name
    portConfig Map<Property Map>
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    portMirroring Property Map
    routerId String
    auto assigned if not set
    routingPolicies Map<Property Map>
    Property key is the routing policy name
    servicePolicies List<Property Map>
    tunnelConfigs Map<Property Map>
    Property key is the tunnel name
    tunnelProviderOptions Property Map
    vars Map<String>
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrfConfig Property Map
    vrfInstances Map<Property Map>
    Property key is the network name
    x Number
    x in pixel
    y Number
    y in pixel

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Gateway resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Image1Url string
    Image2Url string
    Image3Url string
    Mac string
    device MAC address
    Model string
    device Model
    OrgId string
    Serial string
    device Serial
    Type string
    Device Type. enum: gateway
    Id string
    The provider-assigned unique ID for this managed resource.
    Image1Url string
    Image2Url string
    Image3Url string
    Mac string
    device MAC address
    Model string
    device Model
    OrgId string
    Serial string
    device Serial
    Type string
    Device Type. enum: gateway
    id String
    The provider-assigned unique ID for this managed resource.
    image1Url String
    image2Url String
    image3Url String
    mac String
    device MAC address
    model String
    device Model
    orgId String
    serial String
    device Serial
    type String
    Device Type. enum: gateway
    id string
    The provider-assigned unique ID for this managed resource.
    image1Url string
    image2Url string
    image3Url string
    mac string
    device MAC address
    model string
    device Model
    orgId string
    serial string
    device Serial
    type string
    Device Type. enum: gateway
    id str
    The provider-assigned unique ID for this managed resource.
    image1_url str
    image2_url str
    image3_url str
    mac str
    device MAC address
    model str
    device Model
    org_id str
    serial str
    device Serial
    type str
    Device Type. enum: gateway
    id String
    The provider-assigned unique ID for this managed resource.
    image1Url String
    image2Url String
    image3Url String
    mac String
    device MAC address
    model String
    device Model
    orgId String
    serial String
    device Serial
    type String
    Device Type. enum: gateway

    Look up Existing Gateway Resource

    Get an existing Gateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: GatewayState, opts?: CustomResourceOptions): Gateway
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            additional_config_cmds: Optional[Sequence[str]] = None,
            bgp_config: Optional[Mapping[str, GatewayBgpConfigArgs]] = None,
            device_id: Optional[str] = None,
            dhcpd_config: Optional[GatewayDhcpdConfigArgs] = None,
            dns_servers: Optional[Sequence[str]] = None,
            dns_suffixes: Optional[Sequence[str]] = None,
            extra_routes: Optional[Mapping[str, GatewayExtraRoutesArgs]] = None,
            extra_routes6: Optional[Mapping[str, GatewayExtraRoutes6Args]] = None,
            idp_profiles: Optional[Mapping[str, GatewayIdpProfilesArgs]] = None,
            image1_url: Optional[str] = None,
            image2_url: Optional[str] = None,
            image3_url: Optional[str] = None,
            ip_configs: Optional[Mapping[str, GatewayIpConfigsArgs]] = None,
            mac: Optional[str] = None,
            managed: Optional[bool] = None,
            map_id: Optional[str] = None,
            model: Optional[str] = None,
            msp_id: Optional[str] = None,
            name: Optional[str] = None,
            networks: Optional[Sequence[GatewayNetworkArgs]] = None,
            notes: Optional[str] = None,
            ntp_servers: Optional[Sequence[str]] = None,
            oob_ip_config: Optional[GatewayOobIpConfigArgs] = None,
            org_id: Optional[str] = None,
            path_preferences: Optional[Mapping[str, GatewayPathPreferencesArgs]] = None,
            port_config: Optional[Mapping[str, GatewayPortConfigArgs]] = None,
            port_mirroring: Optional[GatewayPortMirroringArgs] = None,
            router_id: Optional[str] = None,
            routing_policies: Optional[Mapping[str, GatewayRoutingPoliciesArgs]] = None,
            serial: Optional[str] = None,
            service_policies: Optional[Sequence[GatewayServicePolicyArgs]] = None,
            site_id: Optional[str] = None,
            tunnel_configs: Optional[Mapping[str, GatewayTunnelConfigsArgs]] = None,
            tunnel_provider_options: Optional[GatewayTunnelProviderOptionsArgs] = None,
            type: Optional[str] = None,
            vars: Optional[Mapping[str, str]] = None,
            vrf_config: Optional[GatewayVrfConfigArgs] = None,
            vrf_instances: Optional[Mapping[str, GatewayVrfInstancesArgs]] = None,
            x: Optional[float] = None,
            y: Optional[float] = None) -> Gateway
    func GetGateway(ctx *Context, name string, id IDInput, state *GatewayState, opts ...ResourceOption) (*Gateway, error)
    public static Gateway Get(string name, Input<string> id, GatewayState? state, CustomResourceOptions? opts = null)
    public static Gateway get(String name, Output<String> id, GatewayState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AdditionalConfigCmds List<string>
    additional CLI commands to append to the generated Junos config Note: no check is done
    BgpConfig Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayBgpConfigArgs>
    DeviceId string
    DhcpdConfig Pulumi.JuniperMist.Device.Inputs.GatewayDhcpdConfig
    DnsServers List<string>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    DnsSuffixes List<string>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    ExtraRoutes Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayExtraRoutesArgs>
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    ExtraRoutes6 Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayExtraRoutes6Args>
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    IdpProfiles Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayIdpProfilesArgs>
    Property key is the profile name
    Image1Url string
    Image2Url string
    Image3Url string
    IpConfigs Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayIpConfigsArgs>
    Property key is the network name
    Mac string
    device MAC address
    Managed bool
    MapId string
    map where the device belongs to
    Model string
    device Model
    MspId string
    Name string
    Networks List<Pulumi.JuniperMist.Device.Inputs.GatewayNetwork>
    Notes string
    NtpServers List<string>
    OobIpConfig Pulumi.JuniperMist.Device.Inputs.GatewayOobIpConfig
    out-of-band (vme/em0/fxp0) IP config
    OrgId string
    PathPreferences Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayPathPreferencesArgs>
    Property key is the path name
    PortConfig Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigArgs>
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    PortMirroring Pulumi.JuniperMist.Device.Inputs.GatewayPortMirroring
    RouterId string
    auto assigned if not set
    RoutingPolicies Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesArgs>
    Property key is the routing policy name
    Serial string
    device Serial
    ServicePolicies List<Pulumi.JuniperMist.Device.Inputs.GatewayServicePolicy>
    SiteId string
    TunnelConfigs Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsArgs>
    Property key is the tunnel name
    TunnelProviderOptions Pulumi.JuniperMist.Device.Inputs.GatewayTunnelProviderOptions
    Type string
    Device Type. enum: gateway
    Vars Dictionary<string, string>
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    VrfConfig Pulumi.JuniperMist.Device.Inputs.GatewayVrfConfig
    VrfInstances Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayVrfInstancesArgs>
    Property key is the network name
    X double
    x in pixel
    Y double
    y in pixel
    AdditionalConfigCmds []string
    additional CLI commands to append to the generated Junos config Note: no check is done
    BgpConfig map[string]GatewayBgpConfigArgs
    DeviceId string
    DhcpdConfig GatewayDhcpdConfigArgs
    DnsServers []string
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    DnsSuffixes []string
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    ExtraRoutes map[string]GatewayExtraRoutesArgs
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    ExtraRoutes6 map[string]GatewayExtraRoutes6Args
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    IdpProfiles map[string]GatewayIdpProfilesArgs
    Property key is the profile name
    Image1Url string
    Image2Url string
    Image3Url string
    IpConfigs map[string]GatewayIpConfigsArgs
    Property key is the network name
    Mac string
    device MAC address
    Managed bool
    MapId string
    map where the device belongs to
    Model string
    device Model
    MspId string
    Name string
    Networks []GatewayNetworkArgs
    Notes string
    NtpServers []string
    OobIpConfig GatewayOobIpConfigArgs
    out-of-band (vme/em0/fxp0) IP config
    OrgId string
    PathPreferences map[string]GatewayPathPreferencesArgs
    Property key is the path name
    PortConfig map[string]GatewayPortConfigArgs
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    PortMirroring GatewayPortMirroringArgs
    RouterId string
    auto assigned if not set
    RoutingPolicies map[string]GatewayRoutingPoliciesArgs
    Property key is the routing policy name
    Serial string
    device Serial
    ServicePolicies []GatewayServicePolicyArgs
    SiteId string
    TunnelConfigs map[string]GatewayTunnelConfigsArgs
    Property key is the tunnel name
    TunnelProviderOptions GatewayTunnelProviderOptionsArgs
    Type string
    Device Type. enum: gateway
    Vars map[string]string
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    VrfConfig GatewayVrfConfigArgs
    VrfInstances map[string]GatewayVrfInstancesArgs
    Property key is the network name
    X float64
    x in pixel
    Y float64
    y in pixel
    additionalConfigCmds List<String>
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgpConfig Map<String,GatewayBgpConfigArgs>
    deviceId String
    dhcpdConfig GatewayDhcpdConfig
    dnsServers List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dnsSuffixes List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extraRoutes Map<String,GatewayExtraRoutesArgs>
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extraRoutes6 Map<String,GatewayExtraRoutes6Args>
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idpProfiles Map<String,GatewayIdpProfilesArgs>
    Property key is the profile name
    image1Url String
    image2Url String
    image3Url String
    ipConfigs Map<String,GatewayIpConfigsArgs>
    Property key is the network name
    mac String
    device MAC address
    managed Boolean
    mapId String
    map where the device belongs to
    model String
    device Model
    mspId String
    name String
    networks List<GatewayNetwork>
    notes String
    ntpServers List<String>
    oobIpConfig GatewayOobIpConfig
    out-of-band (vme/em0/fxp0) IP config
    orgId String
    pathPreferences Map<String,GatewayPathPreferencesArgs>
    Property key is the path name
    portConfig Map<String,GatewayPortConfigArgs>
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    portMirroring GatewayPortMirroring
    routerId String
    auto assigned if not set
    routingPolicies Map<String,GatewayRoutingPoliciesArgs>
    Property key is the routing policy name
    serial String
    device Serial
    servicePolicies List<GatewayServicePolicy>
    siteId String
    tunnelConfigs Map<String,GatewayTunnelConfigsArgs>
    Property key is the tunnel name
    tunnelProviderOptions GatewayTunnelProviderOptions
    type String
    Device Type. enum: gateway
    vars Map<String,String>
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrfConfig GatewayVrfConfig
    vrfInstances Map<String,GatewayVrfInstancesArgs>
    Property key is the network name
    x Double
    x in pixel
    y Double
    y in pixel
    additionalConfigCmds string[]
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgpConfig {[key: string]: GatewayBgpConfigArgs}
    deviceId string
    dhcpdConfig GatewayDhcpdConfig
    dnsServers string[]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dnsSuffixes string[]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extraRoutes {[key: string]: GatewayExtraRoutesArgs}
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extraRoutes6 {[key: string]: GatewayExtraRoutes6Args}
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idpProfiles {[key: string]: GatewayIdpProfilesArgs}
    Property key is the profile name
    image1Url string
    image2Url string
    image3Url string
    ipConfigs {[key: string]: GatewayIpConfigsArgs}
    Property key is the network name
    mac string
    device MAC address
    managed boolean
    mapId string
    map where the device belongs to
    model string
    device Model
    mspId string
    name string
    networks GatewayNetwork[]
    notes string
    ntpServers string[]
    oobIpConfig GatewayOobIpConfig
    out-of-band (vme/em0/fxp0) IP config
    orgId string
    pathPreferences {[key: string]: GatewayPathPreferencesArgs}
    Property key is the path name
    portConfig {[key: string]: GatewayPortConfigArgs}
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    portMirroring GatewayPortMirroring
    routerId string
    auto assigned if not set
    routingPolicies {[key: string]: GatewayRoutingPoliciesArgs}
    Property key is the routing policy name
    serial string
    device Serial
    servicePolicies GatewayServicePolicy[]
    siteId string
    tunnelConfigs {[key: string]: GatewayTunnelConfigsArgs}
    Property key is the tunnel name
    tunnelProviderOptions GatewayTunnelProviderOptions
    type string
    Device Type. enum: gateway
    vars {[key: string]: string}
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrfConfig GatewayVrfConfig
    vrfInstances {[key: string]: GatewayVrfInstancesArgs}
    Property key is the network name
    x number
    x in pixel
    y number
    y in pixel
    additional_config_cmds Sequence[str]
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgp_config Mapping[str, GatewayBgpConfigArgs]
    device_id str
    dhcpd_config GatewayDhcpdConfigArgs
    dns_servers Sequence[str]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dns_suffixes Sequence[str]
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extra_routes Mapping[str, GatewayExtraRoutesArgs]
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extra_routes6 Mapping[str, GatewayExtraRoutes6Args]
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idp_profiles Mapping[str, GatewayIdpProfilesArgs]
    Property key is the profile name
    image1_url str
    image2_url str
    image3_url str
    ip_configs Mapping[str, GatewayIpConfigsArgs]
    Property key is the network name
    mac str
    device MAC address
    managed bool
    map_id str
    map where the device belongs to
    model str
    device Model
    msp_id str
    name str
    networks Sequence[GatewayNetworkArgs]
    notes str
    ntp_servers Sequence[str]
    oob_ip_config GatewayOobIpConfigArgs
    out-of-band (vme/em0/fxp0) IP config
    org_id str
    path_preferences Mapping[str, GatewayPathPreferencesArgs]
    Property key is the path name
    port_config Mapping[str, GatewayPortConfigArgs]
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    port_mirroring GatewayPortMirroringArgs
    router_id str
    auto assigned if not set
    routing_policies Mapping[str, GatewayRoutingPoliciesArgs]
    Property key is the routing policy name
    serial str
    device Serial
    service_policies Sequence[GatewayServicePolicyArgs]
    site_id str
    tunnel_configs Mapping[str, GatewayTunnelConfigsArgs]
    Property key is the tunnel name
    tunnel_provider_options GatewayTunnelProviderOptionsArgs
    type str
    Device Type. enum: gateway
    vars Mapping[str, str]
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrf_config GatewayVrfConfigArgs
    vrf_instances Mapping[str, GatewayVrfInstancesArgs]
    Property key is the network name
    x float
    x in pixel
    y float
    y in pixel
    additionalConfigCmds List<String>
    additional CLI commands to append to the generated Junos config Note: no check is done
    bgpConfig Map<Property Map>
    deviceId String
    dhcpdConfig Property Map
    dnsServers List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    dnsSuffixes List<String>
    Global dns settings. To keep compatibility, dns settings in ip_config and oob_ip_config will overwrite this setting
    extraRoutes Map<Property Map>
    Property key is the destination CIDR (e.g. "10.0.0.0/8")
    extraRoutes6 Map<Property Map>
    Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
    idpProfiles Map<Property Map>
    Property key is the profile name
    image1Url String
    image2Url String
    image3Url String
    ipConfigs Map<Property Map>
    Property key is the network name
    mac String
    device MAC address
    managed Boolean
    mapId String
    map where the device belongs to
    model String
    device Model
    mspId String
    name String
    networks List<Property Map>
    notes String
    ntpServers List<String>
    oobIpConfig Property Map
    out-of-band (vme/em0/fxp0) IP config
    orgId String
    pathPreferences Map<Property Map>
    Property key is the path name
    portConfig Map<Property Map>
    Property key is the port name or range (e.g. "ge-0/0/0-10")
    portMirroring Property Map
    routerId String
    auto assigned if not set
    routingPolicies Map<Property Map>
    Property key is the routing policy name
    serial String
    device Serial
    servicePolicies List<Property Map>
    siteId String
    tunnelConfigs Map<Property Map>
    Property key is the tunnel name
    tunnelProviderOptions Property Map
    type String
    Device Type. enum: gateway
    vars Map<String>
    a dictionary of name->value, the vars can then be used in Wlans. This can overwrite those from Site Vars
    vrfConfig Property Map
    vrfInstances Map<Property Map>
    Property key is the network name
    x Number
    x in pixel
    y Number
    y in pixel

    Supporting Types

    GatewayBgpConfig, GatewayBgpConfigArgs

    AuthKey string
    BfdMinimumInterval int
    when bfd_multiplier is configured alone. Default:

    • 1000 if type==external
    • 350 type==internal
    BfdMultiplier int
    when bfd_minimum_interval_is_configured alone
    Communities List<Pulumi.JuniperMist.Device.Inputs.GatewayBgpConfigCommunity>
    DisableBfd bool
    BFD provides faster path failure detection and is enabled by default
    Export string
    ExportPolicy string
    default export policies if no per-neighbor policies defined
    ExtendedV4Nexthop bool
    by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
    GracefulRestartTime int
    0 means disable
    HoldTime int
    Import string
    ImportPolicy string
    default import policies if no per-neighbor policies defined
    LocalAs int
    NeighborAs int
    Neighbors Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayBgpConfigNeighbors>
    if per-neighbor as is desired. Property key is the neighbor address
    Networks List<string>
    if type!=externalor via==wannetworks where we expect BGP neighbor to connect to/from
    NoReadvertiseToOverlay bool
    by default, we'll re-advertise all learned BGP routers toward overlay
    TunnelName string
    if type==tunnel
    Type string
    enum: external, internal
    Via string
    network name. enum: lan, tunnel, vpn, wan
    VpnName string
    WanName string
    if via==wan
    AuthKey string
    BfdMinimumInterval int
    when bfd_multiplier is configured alone. Default:

    • 1000 if type==external
    • 350 type==internal
    BfdMultiplier int
    when bfd_minimum_interval_is_configured alone
    Communities []GatewayBgpConfigCommunity
    DisableBfd bool
    BFD provides faster path failure detection and is enabled by default
    Export string
    ExportPolicy string
    default export policies if no per-neighbor policies defined
    ExtendedV4Nexthop bool
    by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
    GracefulRestartTime int
    0 means disable
    HoldTime int
    Import string
    ImportPolicy string
    default import policies if no per-neighbor policies defined
    LocalAs int
    NeighborAs int
    Neighbors map[string]GatewayBgpConfigNeighbors
    if per-neighbor as is desired. Property key is the neighbor address
    Networks []string
    if type!=externalor via==wannetworks where we expect BGP neighbor to connect to/from
    NoReadvertiseToOverlay bool
    by default, we'll re-advertise all learned BGP routers toward overlay
    TunnelName string
    if type==tunnel
    Type string
    enum: external, internal
    Via string
    network name. enum: lan, tunnel, vpn, wan
    VpnName string
    WanName string
    if via==wan
    authKey String
    bfdMinimumInterval Integer
    when bfd_multiplier is configured alone. Default:

    • 1000 if type==external
    • 350 type==internal
    bfdMultiplier Integer
    when bfd_minimum_interval_is_configured alone
    communities List<GatewayBgpConfigCommunity>
    disableBfd Boolean
    BFD provides faster path failure detection and is enabled by default
    export String
    exportPolicy String
    default export policies if no per-neighbor policies defined
    extendedV4Nexthop Boolean
    by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
    gracefulRestartTime Integer
    0 means disable
    holdTime Integer
    importPolicy String
    default import policies if no per-neighbor policies defined
    import_ String
    localAs Integer
    neighborAs Integer
    neighbors Map<String,GatewayBgpConfigNeighbors>
    if per-neighbor as is desired. Property key is the neighbor address
    networks List<String>
    if type!=externalor via==wannetworks where we expect BGP neighbor to connect to/from
    noReadvertiseToOverlay Boolean
    by default, we'll re-advertise all learned BGP routers toward overlay
    tunnelName String
    if type==tunnel
    type String
    enum: external, internal
    via String
    network name. enum: lan, tunnel, vpn, wan
    vpnName String
    wanName String
    if via==wan
    authKey string
    bfdMinimumInterval number
    when bfd_multiplier is configured alone. Default:

    • 1000 if type==external
    • 350 type==internal
    bfdMultiplier number
    when bfd_minimum_interval_is_configured alone
    communities GatewayBgpConfigCommunity[]
    disableBfd boolean
    BFD provides faster path failure detection and is enabled by default
    export string
    exportPolicy string
    default export policies if no per-neighbor policies defined
    extendedV4Nexthop boolean
    by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
    gracefulRestartTime number
    0 means disable
    holdTime number
    import string
    importPolicy string
    default import policies if no per-neighbor policies defined
    localAs number
    neighborAs number
    neighbors {[key: string]: GatewayBgpConfigNeighbors}
    if per-neighbor as is desired. Property key is the neighbor address
    networks string[]
    if type!=externalor via==wannetworks where we expect BGP neighbor to connect to/from
    noReadvertiseToOverlay boolean
    by default, we'll re-advertise all learned BGP routers toward overlay
    tunnelName string
    if type==tunnel
    type string
    enum: external, internal
    via string
    network name. enum: lan, tunnel, vpn, wan
    vpnName string
    wanName string
    if via==wan
    auth_key str
    bfd_minimum_interval int
    when bfd_multiplier is configured alone. Default:

    • 1000 if type==external
    • 350 type==internal
    bfd_multiplier int
    when bfd_minimum_interval_is_configured alone
    communities Sequence[GatewayBgpConfigCommunity]
    disable_bfd bool
    BFD provides faster path failure detection and is enabled by default
    export str
    export_policy str
    default export policies if no per-neighbor policies defined
    extended_v4_nexthop bool
    by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
    graceful_restart_time int
    0 means disable
    hold_time int
    import_ str
    import_policy str
    default import policies if no per-neighbor policies defined
    local_as int
    neighbor_as int
    neighbors Mapping[str, GatewayBgpConfigNeighbors]
    if per-neighbor as is desired. Property key is the neighbor address
    networks Sequence[str]
    if type!=externalor via==wannetworks where we expect BGP neighbor to connect to/from
    no_readvertise_to_overlay bool
    by default, we'll re-advertise all learned BGP routers toward overlay
    tunnel_name str
    if type==tunnel
    type str
    enum: external, internal
    via str
    network name. enum: lan, tunnel, vpn, wan
    vpn_name str
    wan_name str
    if via==wan
    authKey String
    bfdMinimumInterval Number
    when bfd_multiplier is configured alone. Default:

    • 1000 if type==external
    • 350 type==internal
    bfdMultiplier Number
    when bfd_minimum_interval_is_configured alone
    communities List<Property Map>
    disableBfd Boolean
    BFD provides faster path failure detection and is enabled by default
    export String
    exportPolicy String
    default export policies if no per-neighbor policies defined
    extendedV4Nexthop Boolean
    by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
    gracefulRestartTime Number
    0 means disable
    holdTime Number
    import String
    importPolicy String
    default import policies if no per-neighbor policies defined
    localAs Number
    neighborAs Number
    neighbors Map<Property Map>
    if per-neighbor as is desired. Property key is the neighbor address
    networks List<String>
    if type!=externalor via==wannetworks where we expect BGP neighbor to connect to/from
    noReadvertiseToOverlay Boolean
    by default, we'll re-advertise all learned BGP routers toward overlay
    tunnelName String
    if type==tunnel
    type String
    enum: external, internal
    via String
    network name. enum: lan, tunnel, vpn, wan
    vpnName String
    wanName String
    if via==wan

    GatewayBgpConfigCommunity, GatewayBgpConfigCommunityArgs

    Id string
    LocalPreference int
    VpnName string
    Id string
    LocalPreference int
    VpnName string
    id String
    localPreference Integer
    vpnName String
    id string
    localPreference number
    vpnName string
    id String
    localPreference Number
    vpnName String

    GatewayBgpConfigNeighbors, GatewayBgpConfigNeighborsArgs

    Disabled bool
    If true, the BGP session to this neighbor will be administratively disabled/shutdown
    ExportPolicy string
    HoldTime int
    ImportPolicy string
    MultihopTtl int
    assuming BGP neighbor is directly connected
    NeighborAs int
    Disabled bool
    If true, the BGP session to this neighbor will be administratively disabled/shutdown
    ExportPolicy string
    HoldTime int
    ImportPolicy string
    MultihopTtl int
    assuming BGP neighbor is directly connected
    NeighborAs int
    disabled Boolean
    If true, the BGP session to this neighbor will be administratively disabled/shutdown
    exportPolicy String
    holdTime Integer
    importPolicy String
    multihopTtl Integer
    assuming BGP neighbor is directly connected
    neighborAs Integer
    disabled boolean
    If true, the BGP session to this neighbor will be administratively disabled/shutdown
    exportPolicy string
    holdTime number
    importPolicy string
    multihopTtl number
    assuming BGP neighbor is directly connected
    neighborAs number
    disabled bool
    If true, the BGP session to this neighbor will be administratively disabled/shutdown
    export_policy str
    hold_time int
    import_policy str
    multihop_ttl int
    assuming BGP neighbor is directly connected
    neighbor_as int
    disabled Boolean
    If true, the BGP session to this neighbor will be administratively disabled/shutdown
    exportPolicy String
    holdTime Number
    importPolicy String
    multihopTtl Number
    assuming BGP neighbor is directly connected
    neighborAs Number

    GatewayDhcpdConfig, GatewayDhcpdConfigArgs

    Config Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayDhcpdConfigConfig>
    Property key is the network name
    Enabled bool
    if set to true, enable the DHCP server
    Config map[string]GatewayDhcpdConfigConfig
    Property key is the network name
    Enabled bool
    if set to true, enable the DHCP server
    config Map<String,GatewayDhcpdConfigConfig>
    Property key is the network name
    enabled Boolean
    if set to true, enable the DHCP server
    config {[key: string]: GatewayDhcpdConfigConfig}
    Property key is the network name
    enabled boolean
    if set to true, enable the DHCP server
    config Mapping[str, GatewayDhcpdConfigConfig]
    Property key is the network name
    enabled bool
    if set to true, enable the DHCP server
    config Map<Property Map>
    Property key is the network name
    enabled Boolean
    if set to true, enable the DHCP server

    GatewayDhcpdConfigConfig, GatewayDhcpdConfigConfigArgs

    DnsServers List<string>
    if type==local - optional, if not defined, system one will be used
    DnsSuffixes List<string>
    if type==local - optional, if not defined, system one will be used
    FixedBindings Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigFixedBindings>
    Property key is the MAC Address. Format is [0-9a-f]{12} (e.g "5684dae9ac8b")
    Gateway string
    if type==local - optional, ip will be used if not provided
    IpEnd string
    if type==local
    IpEnd6 string
    if type6==local
    IpStart string
    if type==local
    IpStart6 string
    if type6==local
    LeaseTime int
    in seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
    Options Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigOptions>
    Property key is the DHCP option number
    ServerIdOverride bool
    server_id_override==true means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, should overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address.
    Servers List<string>
    if type==relay
    Servers6s List<string>
    if type6==relay
    Type string
    enum: local (DHCP Server), none, relay (DHCP Relay)
    Type6 string
    enum: local (DHCP Server), none, relay (DHCP Relay)
    VendorEncapulated Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayDhcpdConfigConfigVendorEncapulated>
    Property key is :, with

    • enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
    • sub option code: 1-255, sub-option code'
    DnsServers []string
    if type==local - optional, if not defined, system one will be used
    DnsSuffixes []string
    if type==local - optional, if not defined, system one will be used
    FixedBindings map[string]GatewayDhcpdConfigConfigFixedBindings
    Property key is the MAC Address. Format is [0-9a-f]{12} (e.g "5684dae9ac8b")
    Gateway string
    if type==local - optional, ip will be used if not provided
    IpEnd string
    if type==local
    IpEnd6 string
    if type6==local
    IpStart string
    if type==local
    IpStart6 string
    if type6==local
    LeaseTime int
    in seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
    Options map[string]GatewayDhcpdConfigConfigOptions
    Property key is the DHCP option number
    ServerIdOverride bool
    server_id_override==true means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, should overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address.
    Servers []string
    if type==relay
    Servers6s []string
    if type6==relay
    Type string
    enum: local (DHCP Server), none, relay (DHCP Relay)
    Type6 string
    enum: local (DHCP Server), none, relay (DHCP Relay)
    VendorEncapulated map[string]GatewayDhcpdConfigConfigVendorEncapulated
    Property key is :, with

    • enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
    • sub option code: 1-255, sub-option code'
    dnsServers List<String>
    if type==local - optional, if not defined, system one will be used
    dnsSuffixes List<String>
    if type==local - optional, if not defined, system one will be used
    fixedBindings Map<String,GatewayDhcpdConfigConfigFixedBindings>
    Property key is the MAC Address. Format is [0-9a-f]{12} (e.g "5684dae9ac8b")
    gateway String
    if type==local - optional, ip will be used if not provided
    ipEnd String
    if type==local
    ipEnd6 String
    if type6==local
    ipStart String
    if type==local
    ipStart6 String
    if type6==local
    leaseTime Integer
    in seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
    options Map<String,GatewayDhcpdConfigConfigOptions>
    Property key is the DHCP option number
    serverIdOverride Boolean
    server_id_override==true means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, should overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address.
    servers List<String>
    if type==relay
    servers6s List<String>
    if type6==relay
    type String
    enum: local (DHCP Server), none, relay (DHCP Relay)
    type6 String
    enum: local (DHCP Server), none, relay (DHCP Relay)
    vendorEncapulated Map<String,GatewayDhcpdConfigConfigVendorEncapulated>
    Property key is :, with

    • enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
    • sub option code: 1-255, sub-option code'
    dnsServers string[]
    if type==local - optional, if not defined, system one will be used
    dnsSuffixes string[]
    if type==local - optional, if not defined, system one will be used
    fixedBindings {[key: string]: GatewayDhcpdConfigConfigFixedBindings}
    Property key is the MAC Address. Format is [0-9a-f]{12} (e.g "5684dae9ac8b")
    gateway string
    if type==local - optional, ip will be used if not provided
    ipEnd string
    if type==local
    ipEnd6 string
    if type6==local
    ipStart string
    if type==local
    ipStart6 string
    if type6==local
    leaseTime number
    in seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
    options {[key: string]: GatewayDhcpdConfigConfigOptions}
    Property key is the DHCP option number
    serverIdOverride boolean
    server_id_override==true means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, should overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address.
    servers string[]
    if type==relay
    servers6s string[]
    if type6==relay
    type string
    enum: local (DHCP Server), none, relay (DHCP Relay)
    type6 string
    enum: local (DHCP Server), none, relay (DHCP Relay)
    vendorEncapulated {[key: string]: GatewayDhcpdConfigConfigVendorEncapulated}
    Property key is :, with

    • enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
    • sub option code: 1-255, sub-option code'
    dns_servers Sequence[str]
    if type==local - optional, if not defined, system one will be used
    dns_suffixes Sequence[str]
    if type==local - optional, if not defined, system one will be used
    fixed_bindings Mapping[str, GatewayDhcpdConfigConfigFixedBindings]
    Property key is the MAC Address. Format is [0-9a-f]{12} (e.g "5684dae9ac8b")
    gateway str
    if type==local - optional, ip will be used if not provided
    ip_end str
    if type==local
    ip_end6 str
    if type6==local
    ip_start str
    if type==local
    ip_start6 str
    if type6==local
    lease_time int
    in seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
    options Mapping[str, GatewayDhcpdConfigConfigOptions]
    Property key is the DHCP option number
    server_id_override bool
    server_id_override==true means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, should overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address.
    servers Sequence[str]
    if type==relay
    servers6s Sequence[str]
    if type6==relay
    type str
    enum: local (DHCP Server), none, relay (DHCP Relay)
    type6 str
    enum: local (DHCP Server), none, relay (DHCP Relay)
    vendor_encapulated Mapping[str, GatewayDhcpdConfigConfigVendorEncapulated]
    Property key is :, with

    • enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
    • sub option code: 1-255, sub-option code'
    dnsServers List<String>
    if type==local - optional, if not defined, system one will be used
    dnsSuffixes List<String>
    if type==local - optional, if not defined, system one will be used
    fixedBindings Map<Property Map>
    Property key is the MAC Address. Format is [0-9a-f]{12} (e.g "5684dae9ac8b")
    gateway String
    if type==local - optional, ip will be used if not provided
    ipEnd String
    if type==local
    ipEnd6 String
    if type6==local
    ipStart String
    if type==local
    ipStart6 String
    if type6==local
    leaseTime Number
    in seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
    options Map<Property Map>
    Property key is the DHCP option number
    serverIdOverride Boolean
    server_id_override==true means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, should overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address.
    servers List<String>
    if type==relay
    servers6s List<String>
    if type6==relay
    type String
    enum: local (DHCP Server), none, relay (DHCP Relay)
    type6 String
    enum: local (DHCP Server), none, relay (DHCP Relay)
    vendorEncapulated Map<Property Map>
    Property key is :, with

    • enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
    • sub option code: 1-255, sub-option code'

    GatewayDhcpdConfigConfigFixedBindings, GatewayDhcpdConfigConfigFixedBindingsArgs

    Ip string
    Name string
    Ip string
    Name string
    ip String
    name String
    ip string
    name string
    ip str
    name str
    ip String
    name String

    GatewayDhcpdConfigConfigOptions, GatewayDhcpdConfigConfigOptionsArgs

    Type string
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    Value string
    Type string
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    Value string
    type String
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value String
    type string
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value string
    type str
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value str
    type String
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value String

    GatewayDhcpdConfigConfigVendorEncapulated, GatewayDhcpdConfigConfigVendorEncapulatedArgs

    Type string
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    Value string
    Type string
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    Value string
    type String
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value String
    type string
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value string
    type str
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value str
    type String
    enum: boolean, hex, int16, int32, ip, string, uint16, uint32
    value String

    GatewayExtraRoutes, GatewayExtraRoutesArgs

    Via string
    Via string
    via String
    via string
    via str
    via String

    GatewayExtraRoutes6, GatewayExtraRoutes6Args

    Via string
    Via string
    via String
    via string
    via str
    via String

    GatewayIdpProfiles, GatewayIdpProfilesArgs

    BaseProfile string
    enum: critical, standard, strict
    CreatedTime float64
    Id string
    ModifiedTime float64
    Name string
    OrgId string
    Overwrites []GatewayIdpProfilesOverwrite
    baseProfile String
    enum: critical, standard, strict
    createdTime Double
    id String
    modifiedTime Double
    name String
    orgId String
    overwrites List<GatewayIdpProfilesOverwrite>
    baseProfile string
    enum: critical, standard, strict
    createdTime number
    id string
    modifiedTime number
    name string
    orgId string
    overwrites GatewayIdpProfilesOverwrite[]
    baseProfile String
    enum: critical, standard, strict
    createdTime Number
    id String
    modifiedTime Number
    name String
    orgId String
    overwrites List<Property Map>

    GatewayIdpProfilesOverwrite, GatewayIdpProfilesOverwriteArgs

    Action string
    enum:

    • alert (default)
    • drop: siliently dropping packets
    • close: notify client/server to close connection
    Matching Pulumi.JuniperMist.Device.Inputs.GatewayIdpProfilesOverwriteMatching
    Name string
    Action string
    enum:

    • alert (default)
    • drop: siliently dropping packets
    • close: notify client/server to close connection
    Matching GatewayIdpProfilesOverwriteMatching
    Name string
    action String
    enum:

    • alert (default)
    • drop: siliently dropping packets
    • close: notify client/server to close connection
    matching GatewayIdpProfilesOverwriteMatching
    name String
    action string
    enum:

    • alert (default)
    • drop: siliently dropping packets
    • close: notify client/server to close connection
    matching GatewayIdpProfilesOverwriteMatching
    name string
    action str
    enum:

    • alert (default)
    • drop: siliently dropping packets
    • close: notify client/server to close connection
    matching GatewayIdpProfilesOverwriteMatching
    name str
    action String
    enum:

    • alert (default)
    • drop: siliently dropping packets
    • close: notify client/server to close connection
    matching Property Map
    name String

    GatewayIdpProfilesOverwriteMatching, GatewayIdpProfilesOverwriteMatchingArgs

    AttackNames List<string>
    DstSubnets List<string>
    Severities List<string>
    AttackNames []string
    DstSubnets []string
    Severities []string
    attackNames List<String>
    dstSubnets List<String>
    severities List<String>
    attackNames string[]
    dstSubnets string[]
    severities string[]
    attack_names Sequence[str]
    dst_subnets Sequence[str]
    severities Sequence[str]
    attackNames List<String>
    dstSubnets List<String>
    severities List<String>

    GatewayIpConfigs, GatewayIpConfigsArgs

    Ip string
    Netmask string
    SecondaryIps List<string>
    optional list of secondary IPs in CIDR format
    Type string
    enum: dhcp, static
    Ip string
    Netmask string
    SecondaryIps []string
    optional list of secondary IPs in CIDR format
    Type string
    enum: dhcp, static
    ip String
    netmask String
    secondaryIps List<String>
    optional list of secondary IPs in CIDR format
    type String
    enum: dhcp, static
    ip string
    netmask string
    secondaryIps string[]
    optional list of secondary IPs in CIDR format
    type string
    enum: dhcp, static
    ip str
    netmask str
    secondary_ips Sequence[str]
    optional list of secondary IPs in CIDR format
    type str
    enum: dhcp, static
    ip String
    netmask String
    secondaryIps List<String>
    optional list of secondary IPs in CIDR format
    type String
    enum: dhcp, static

    GatewayNetwork, GatewayNetworkArgs

    Name string
    Subnet string
    CreatedTime double
    DisallowMistServices bool
    whether to disallow Mist Devices in the network
    Gateway string
    Gateway6 string
    Id string
    InternalAccess Pulumi.JuniperMist.Device.Inputs.GatewayNetworkInternalAccess
    InternetAccess Pulumi.JuniperMist.Device.Inputs.GatewayNetworkInternetAccess
    whether this network has direct internet access
    Isolation bool
    whether to allow clients in the network to talk to each other
    ModifiedTime double
    OrgId string
    RoutedForNetworks List<string>
    for a Network (usually LAN), it can be routable to other networks (e.g. OSPF)
    Subnet6 string
    Tenants Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayNetworkTenants>
    VlanId string
    VpnAccess Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayNetworkVpnAccess>
    Property key is the VPN name. Whether this network can be accessed from vpn
    Name string
    Subnet string
    CreatedTime float64
    DisallowMistServices bool
    whether to disallow Mist Devices in the network
    Gateway string
    Gateway6 string
    Id string
    InternalAccess GatewayNetworkInternalAccess
    InternetAccess GatewayNetworkInternetAccess
    whether this network has direct internet access
    Isolation bool
    whether to allow clients in the network to talk to each other
    ModifiedTime float64
    OrgId string
    RoutedForNetworks []string
    for a Network (usually LAN), it can be routable to other networks (e.g. OSPF)
    Subnet6 string
    Tenants map[string]GatewayNetworkTenants
    VlanId string
    VpnAccess map[string]GatewayNetworkVpnAccess
    Property key is the VPN name. Whether this network can be accessed from vpn
    name String
    subnet String
    createdTime Double
    disallowMistServices Boolean
    whether to disallow Mist Devices in the network
    gateway String
    gateway6 String
    id String
    internalAccess GatewayNetworkInternalAccess
    internetAccess GatewayNetworkInternetAccess
    whether this network has direct internet access
    isolation Boolean
    whether to allow clients in the network to talk to each other
    modifiedTime Double
    orgId String
    routedForNetworks List<String>
    for a Network (usually LAN), it can be routable to other networks (e.g. OSPF)
    subnet6 String
    tenants Map<String,GatewayNetworkTenants>
    vlanId String
    vpnAccess Map<String,GatewayNetworkVpnAccess>
    Property key is the VPN name. Whether this network can be accessed from vpn
    name string
    subnet string
    createdTime number
    disallowMistServices boolean
    whether to disallow Mist Devices in the network
    gateway string
    gateway6 string
    id string
    internalAccess GatewayNetworkInternalAccess
    internetAccess GatewayNetworkInternetAccess
    whether this network has direct internet access
    isolation boolean
    whether to allow clients in the network to talk to each other
    modifiedTime number
    orgId string
    routedForNetworks string[]
    for a Network (usually LAN), it can be routable to other networks (e.g. OSPF)
    subnet6 string
    tenants {[key: string]: GatewayNetworkTenants}
    vlanId string
    vpnAccess {[key: string]: GatewayNetworkVpnAccess}
    Property key is the VPN name. Whether this network can be accessed from vpn
    name str
    subnet str
    created_time float
    disallow_mist_services bool
    whether to disallow Mist Devices in the network
    gateway str
    gateway6 str
    id str
    internal_access GatewayNetworkInternalAccess
    internet_access GatewayNetworkInternetAccess
    whether this network has direct internet access
    isolation bool
    whether to allow clients in the network to talk to each other
    modified_time float
    org_id str
    routed_for_networks Sequence[str]
    for a Network (usually LAN), it can be routable to other networks (e.g. OSPF)
    subnet6 str
    tenants Mapping[str, GatewayNetworkTenants]
    vlan_id str
    vpn_access Mapping[str, GatewayNetworkVpnAccess]
    Property key is the VPN name. Whether this network can be accessed from vpn
    name String
    subnet String
    createdTime Number
    disallowMistServices Boolean
    whether to disallow Mist Devices in the network
    gateway String
    gateway6 String
    id String
    internalAccess Property Map
    internetAccess Property Map
    whether this network has direct internet access
    isolation Boolean
    whether to allow clients in the network to talk to each other
    modifiedTime Number
    orgId String
    routedForNetworks List<String>
    for a Network (usually LAN), it can be routable to other networks (e.g. OSPF)
    subnet6 String
    tenants Map<Property Map>
    vlanId String
    vpnAccess Map<Property Map>
    Property key is the VPN name. Whether this network can be accessed from vpn

    GatewayNetworkInternalAccess, GatewayNetworkInternalAccessArgs

    Enabled bool
    Enabled bool
    enabled Boolean
    enabled boolean
    enabled bool
    enabled Boolean

    GatewayNetworkInternetAccess, GatewayNetworkInternetAccessArgs

    CreateSimpleServicePolicy bool
    DestinationNat Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayNetworkInternetAccessDestinationNat>
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    Enabled bool
    Restricted bool
    by default, all access is allowed, to only allow certain traffic, make restricted=true and define service_policies
    StaticNat Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayNetworkInternetAccessStaticNat>
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    CreateSimpleServicePolicy bool
    DestinationNat map[string]GatewayNetworkInternetAccessDestinationNat
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    Enabled bool
    Restricted bool
    by default, all access is allowed, to only allow certain traffic, make restricted=true and define service_policies
    StaticNat map[string]GatewayNetworkInternetAccessStaticNat
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    createSimpleServicePolicy Boolean
    destinationNat Map<String,GatewayNetworkInternetAccessDestinationNat>
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    enabled Boolean
    restricted Boolean
    by default, all access is allowed, to only allow certain traffic, make restricted=true and define service_policies
    staticNat Map<String,GatewayNetworkInternetAccessStaticNat>
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    createSimpleServicePolicy boolean
    destinationNat {[key: string]: GatewayNetworkInternetAccessDestinationNat}
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    enabled boolean
    restricted boolean
    by default, all access is allowed, to only allow certain traffic, make restricted=true and define service_policies
    staticNat {[key: string]: GatewayNetworkInternetAccessStaticNat}
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    create_simple_service_policy bool
    destination_nat Mapping[str, GatewayNetworkInternetAccessDestinationNat]
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    enabled bool
    restricted bool
    by default, all access is allowed, to only allow certain traffic, make restricted=true and define service_policies
    static_nat Mapping[str, GatewayNetworkInternetAccessStaticNat]
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    createSimpleServicePolicy Boolean
    destinationNat Map<Property Map>
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    enabled Boolean
    restricted Boolean
    by default, all access is allowed, to only allow certain traffic, make restricted=true and define service_policies
    staticNat Map<Property Map>
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")

    GatewayNetworkInternetAccessDestinationNat, GatewayNetworkInternetAccessDestinationNatArgs

    InternalIp string
    Name string
    Port int
    InternalIp string
    Name string
    Port int
    internalIp String
    name String
    port Integer
    internalIp string
    name string
    port number
    internalIp String
    name String
    port Number

    GatewayNetworkInternetAccessStaticNat, GatewayNetworkInternetAccessStaticNatArgs

    InternalIp string
    Name string
    WanName string
    If not set, we configure the nat policies against all WAN ports for simplicity
    InternalIp string
    Name string
    WanName string
    If not set, we configure the nat policies against all WAN ports for simplicity
    internalIp String
    name String
    wanName String
    If not set, we configure the nat policies against all WAN ports for simplicity
    internalIp string
    name string
    wanName string
    If not set, we configure the nat policies against all WAN ports for simplicity
    internal_ip str
    name str
    wan_name str
    If not set, we configure the nat policies against all WAN ports for simplicity
    internalIp String
    name String
    wanName String
    If not set, we configure the nat policies against all WAN ports for simplicity

    GatewayNetworkTenants, GatewayNetworkTenantsArgs

    Addresses List<string>
    Addresses []string
    addresses List<String>
    addresses string[]
    addresses Sequence[str]
    addresses List<String>

    GatewayNetworkVpnAccess, GatewayNetworkVpnAccessArgs

    AdvertisedSubnet string
    if routed==true, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side
    AllowPing bool
    whether to allow ping from vpn into this routed network
    DestinationNat Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayNetworkVpnAccessDestinationNat>
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    NatPool string
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub
    NoReadvertiseToLanBgp bool
    toward LAN-side BGP peers
    NoReadvertiseToLanOspf bool
    toward LAN-side OSPF peers
    NoReadvertiseToOverlay bool
    toward overlay how HUB should deal with routes it received from Spokes
    OtherVrfs List<string>
    by default, the routes are only readvertised toward the same vrf on spoke to allow it to be leaked to other vrfs
    Routed bool
    whether this network is routable
    SourceNat Pulumi.JuniperMist.Device.Inputs.GatewayNetworkVpnAccessSourceNat
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub
    StaticNat Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayNetworkVpnAccessStaticNat>
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    SummarizedSubnet string
    toward overlay how HUB should deal with routes it received from Spokes
    SummarizedSubnetToLanBgp string
    toward LAN-side BGP peers
    SummarizedSubnetToLanOspf string
    toward LAN-side OSPF peers
    AdvertisedSubnet string
    if routed==true, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side
    AllowPing bool
    whether to allow ping from vpn into this routed network
    DestinationNat map[string]GatewayNetworkVpnAccessDestinationNat
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    NatPool string
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub
    NoReadvertiseToLanBgp bool
    toward LAN-side BGP peers
    NoReadvertiseToLanOspf bool
    toward LAN-side OSPF peers
    NoReadvertiseToOverlay bool
    toward overlay how HUB should deal with routes it received from Spokes
    OtherVrfs []string
    by default, the routes are only readvertised toward the same vrf on spoke to allow it to be leaked to other vrfs
    Routed bool
    whether this network is routable
    SourceNat GatewayNetworkVpnAccessSourceNat
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub
    StaticNat map[string]GatewayNetworkVpnAccessStaticNat
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    SummarizedSubnet string
    toward overlay how HUB should deal with routes it received from Spokes
    SummarizedSubnetToLanBgp string
    toward LAN-side BGP peers
    SummarizedSubnetToLanOspf string
    toward LAN-side OSPF peers
    advertisedSubnet String
    if routed==true, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side
    allowPing Boolean
    whether to allow ping from vpn into this routed network
    destinationNat Map<String,GatewayNetworkVpnAccessDestinationNat>
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    natPool String
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub
    noReadvertiseToLanBgp Boolean
    toward LAN-side BGP peers
    noReadvertiseToLanOspf Boolean
    toward LAN-side OSPF peers
    noReadvertiseToOverlay Boolean
    toward overlay how HUB should deal with routes it received from Spokes
    otherVrfs List<String>
    by default, the routes are only readvertised toward the same vrf on spoke to allow it to be leaked to other vrfs
    routed Boolean
    whether this network is routable
    sourceNat GatewayNetworkVpnAccessSourceNat
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub
    staticNat Map<String,GatewayNetworkVpnAccessStaticNat>
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    summarizedSubnet String
    toward overlay how HUB should deal with routes it received from Spokes
    summarizedSubnetToLanBgp String
    toward LAN-side BGP peers
    summarizedSubnetToLanOspf String
    toward LAN-side OSPF peers
    advertisedSubnet string
    if routed==true, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side
    allowPing boolean
    whether to allow ping from vpn into this routed network
    destinationNat {[key: string]: GatewayNetworkVpnAccessDestinationNat}
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    natPool string
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub
    noReadvertiseToLanBgp boolean
    toward LAN-side BGP peers
    noReadvertiseToLanOspf boolean
    toward LAN-side OSPF peers
    noReadvertiseToOverlay boolean
    toward overlay how HUB should deal with routes it received from Spokes
    otherVrfs string[]
    by default, the routes are only readvertised toward the same vrf on spoke to allow it to be leaked to other vrfs
    routed boolean
    whether this network is routable
    sourceNat GatewayNetworkVpnAccessSourceNat
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub
    staticNat {[key: string]: GatewayNetworkVpnAccessStaticNat}
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    summarizedSubnet string
    toward overlay how HUB should deal with routes it received from Spokes
    summarizedSubnetToLanBgp string
    toward LAN-side BGP peers
    summarizedSubnetToLanOspf string
    toward LAN-side OSPF peers
    advertised_subnet str
    if routed==true, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side
    allow_ping bool
    whether to allow ping from vpn into this routed network
    destination_nat Mapping[str, GatewayNetworkVpnAccessDestinationNat]
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    nat_pool str
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub
    no_readvertise_to_lan_bgp bool
    toward LAN-side BGP peers
    no_readvertise_to_lan_ospf bool
    toward LAN-side OSPF peers
    no_readvertise_to_overlay bool
    toward overlay how HUB should deal with routes it received from Spokes
    other_vrfs Sequence[str]
    by default, the routes are only readvertised toward the same vrf on spoke to allow it to be leaked to other vrfs
    routed bool
    whether this network is routable
    source_nat GatewayNetworkVpnAccessSourceNat
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub
    static_nat Mapping[str, GatewayNetworkVpnAccessStaticNat]
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    summarized_subnet str
    toward overlay how HUB should deal with routes it received from Spokes
    summarized_subnet_to_lan_bgp str
    toward LAN-side BGP peers
    summarized_subnet_to_lan_ospf str
    toward LAN-side OSPF peers
    advertisedSubnet String
    if routed==true, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side
    allowPing Boolean
    whether to allow ping from vpn into this routed network
    destinationNat Map<Property Map>
    Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222")
    natPool String
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub
    noReadvertiseToLanBgp Boolean
    toward LAN-side BGP peers
    noReadvertiseToLanOspf Boolean
    toward LAN-side OSPF peers
    noReadvertiseToOverlay Boolean
    toward overlay how HUB should deal with routes it received from Spokes
    otherVrfs List<String>
    by default, the routes are only readvertised toward the same vrf on spoke to allow it to be leaked to other vrfs
    routed Boolean
    whether this network is routable
    sourceNat Property Map
    if routed==false (usually at Spoke), but some hosts needs to be reachable from Hub
    staticNat Map<Property Map>
    Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
    summarizedSubnet String
    toward overlay how HUB should deal with routes it received from Spokes
    summarizedSubnetToLanBgp String
    toward LAN-side BGP peers
    summarizedSubnetToLanOspf String
    toward LAN-side OSPF peers

    GatewayNetworkVpnAccessDestinationNat, GatewayNetworkVpnAccessDestinationNatArgs

    InternalIp string
    Name string
    Port int
    InternalIp string
    Name string
    Port int
    internalIp String
    name String
    port Integer
    internalIp string
    name string
    port number
    internalIp String
    name String
    port Number

    GatewayNetworkVpnAccessSourceNat, GatewayNetworkVpnAccessSourceNatArgs

    ExternalIp string
    ExternalIp string
    externalIp String
    externalIp string
    externalIp String

    GatewayNetworkVpnAccessStaticNat, GatewayNetworkVpnAccessStaticNatArgs

    InternalIp string
    Name string
    WanName string
    If not set, we configure the nat policies against all WAN ports for simplicity
    InternalIp string
    Name string
    WanName string
    If not set, we configure the nat policies against all WAN ports for simplicity
    internalIp String
    name String
    wanName String
    If not set, we configure the nat policies against all WAN ports for simplicity
    internalIp string
    name string
    wanName string
    If not set, we configure the nat policies against all WAN ports for simplicity
    internal_ip str
    name str
    wan_name str
    If not set, we configure the nat policies against all WAN ports for simplicity
    internalIp String
    name String
    wanName String
    If not set, we configure the nat policies against all WAN ports for simplicity

    GatewayOobIpConfig, GatewayOobIpConfigArgs

    Gateway string
    if type==static
    Ip string
    if type==static
    Netmask string
    if type==static
    Node1 Pulumi.JuniperMist.Device.Inputs.GatewayOobIpConfigNode1
    for HA Cluster, node1 can have different IP Config
    Type string
    enum: dhcp, static
    UseMgmtVrf bool
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    UseMgmtVrfForHostOut bool
    for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    VlanId string
    Gateway string
    if type==static
    Ip string
    if type==static
    Netmask string
    if type==static
    Node1 GatewayOobIpConfigNode1
    for HA Cluster, node1 can have different IP Config
    Type string
    enum: dhcp, static
    UseMgmtVrf bool
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    UseMgmtVrfForHostOut bool
    for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    VlanId string
    gateway String
    if type==static
    ip String
    if type==static
    netmask String
    if type==static
    node1 GatewayOobIpConfigNode1
    for HA Cluster, node1 can have different IP Config
    type String
    enum: dhcp, static
    useMgmtVrf Boolean
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    useMgmtVrfForHostOut Boolean
    for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlanId String
    gateway string
    if type==static
    ip string
    if type==static
    netmask string
    if type==static
    node1 GatewayOobIpConfigNode1
    for HA Cluster, node1 can have different IP Config
    type string
    enum: dhcp, static
    useMgmtVrf boolean
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    useMgmtVrfForHostOut boolean
    for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlanId string
    gateway str
    if type==static
    ip str
    if type==static
    netmask str
    if type==static
    node1 GatewayOobIpConfigNode1
    for HA Cluster, node1 can have different IP Config
    type str
    enum: dhcp, static
    use_mgmt_vrf bool
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    use_mgmt_vrf_for_host_out bool
    for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlan_id str
    gateway String
    if type==static
    ip String
    if type==static
    netmask String
    if type==static
    node1 Property Map
    for HA Cluster, node1 can have different IP Config
    type String
    enum: dhcp, static
    useMgmtVrf Boolean
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    useMgmtVrfForHostOut Boolean
    for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlanId String

    GatewayOobIpConfigNode1, GatewayOobIpConfigNode1Args

    Gateway string
    if type==static
    Ip string
    Netmask string
    used only if subnet is not specified in networks
    Type string
    enum: dhcp, static
    UseMgmtVrf bool
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    UseMgmtVrfForHostOut bool
    whether to use mgmt_junos for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    VlanId string
    Gateway string
    if type==static
    Ip string
    Netmask string
    used only if subnet is not specified in networks
    Type string
    enum: dhcp, static
    UseMgmtVrf bool
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    UseMgmtVrfForHostOut bool
    whether to use mgmt_junos for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    VlanId string
    gateway String
    if type==static
    ip String
    netmask String
    used only if subnet is not specified in networks
    type String
    enum: dhcp, static
    useMgmtVrf Boolean
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    useMgmtVrfForHostOut Boolean
    whether to use mgmt_junos for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlanId String
    gateway string
    if type==static
    ip string
    netmask string
    used only if subnet is not specified in networks
    type string
    enum: dhcp, static
    useMgmtVrf boolean
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    useMgmtVrfForHostOut boolean
    whether to use mgmt_junos for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlanId string
    gateway str
    if type==static
    ip str
    netmask str
    used only if subnet is not specified in networks
    type str
    enum: dhcp, static
    use_mgmt_vrf bool
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    use_mgmt_vrf_for_host_out bool
    whether to use mgmt_junos for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlan_id str
    gateway String
    if type==static
    ip String
    netmask String
    used only if subnet is not specified in networks
    type String
    enum: dhcp, static
    useMgmtVrf Boolean
    if supported on the platform. If enabled, DNS will be using this routing-instance, too
    useMgmtVrfForHostOut Boolean
    whether to use mgmt_junos for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
    vlanId String

    GatewayPathPreferences, GatewayPathPreferencesArgs

    Paths []GatewayPathPreferencesPath
    Strategy string
    enum: ecmp, ordered, weighted
    paths List<GatewayPathPreferencesPath>
    strategy String
    enum: ecmp, ordered, weighted
    paths GatewayPathPreferencesPath[]
    strategy string
    enum: ecmp, ordered, weighted
    paths Sequence[GatewayPathPreferencesPath]
    strategy str
    enum: ecmp, ordered, weighted
    paths List<Property Map>
    strategy String
    enum: ecmp, ordered, weighted

    GatewayPathPreferencesPath, GatewayPathPreferencesPathArgs

    Cost int
    Disabled bool
    For SSR Only. true, if this specific path is undesired
    GatewayIp string
    only if type==local, if a different gateway is desired
    InternetAccess bool
    only if type==vpn, if this vpn path can be used for internet
    Name string
    required when

    • type==vpn: the name of the VPN Path to use
    • type==wan: the name of the WAN interface to use'
    Networks List<string>
    required when type==local
    TargetIps List<string>
    if type==local, if destination IP is to be replaced
    Type string
    enum: local, tunnel, vpn, wan
    WanName string
    optional if type==vpn
    Cost int
    Disabled bool
    For SSR Only. true, if this specific path is undesired
    GatewayIp string
    only if type==local, if a different gateway is desired
    InternetAccess bool
    only if type==vpn, if this vpn path can be used for internet
    Name string
    required when

    • type==vpn: the name of the VPN Path to use
    • type==wan: the name of the WAN interface to use'
    Networks []string
    required when type==local
    TargetIps []string
    if type==local, if destination IP is to be replaced
    Type string
    enum: local, tunnel, vpn, wan
    WanName string
    optional if type==vpn
    cost Integer
    disabled Boolean
    For SSR Only. true, if this specific path is undesired
    gatewayIp String
    only if type==local, if a different gateway is desired
    internetAccess Boolean
    only if type==vpn, if this vpn path can be used for internet
    name String
    required when

    • type==vpn: the name of the VPN Path to use
    • type==wan: the name of the WAN interface to use'
    networks List<String>
    required when type==local
    targetIps List<String>
    if type==local, if destination IP is to be replaced
    type String
    enum: local, tunnel, vpn, wan
    wanName String
    optional if type==vpn
    cost number
    disabled boolean
    For SSR Only. true, if this specific path is undesired
    gatewayIp string
    only if type==local, if a different gateway is desired
    internetAccess boolean
    only if type==vpn, if this vpn path can be used for internet
    name string
    required when

    • type==vpn: the name of the VPN Path to use
    • type==wan: the name of the WAN interface to use'
    networks string[]
    required when type==local
    targetIps string[]
    if type==local, if destination IP is to be replaced
    type string
    enum: local, tunnel, vpn, wan
    wanName string
    optional if type==vpn
    cost int
    disabled bool
    For SSR Only. true, if this specific path is undesired
    gateway_ip str
    only if type==local, if a different gateway is desired
    internet_access bool
    only if type==vpn, if this vpn path can be used for internet
    name str
    required when

    • type==vpn: the name of the VPN Path to use
    • type==wan: the name of the WAN interface to use'
    networks Sequence[str]
    required when type==local
    target_ips Sequence[str]
    if type==local, if destination IP is to be replaced
    type str
    enum: local, tunnel, vpn, wan
    wan_name str
    optional if type==vpn
    cost Number
    disabled Boolean
    For SSR Only. true, if this specific path is undesired
    gatewayIp String
    only if type==local, if a different gateway is desired
    internetAccess Boolean
    only if type==vpn, if this vpn path can be used for internet
    name String
    required when

    • type==vpn: the name of the VPN Path to use
    • type==wan: the name of the WAN interface to use'
    networks List<String>
    required when type==local
    targetIps List<String>
    if type==local, if destination IP is to be replaced
    type String
    enum: local, tunnel, vpn, wan
    wanName String
    optional if type==vpn

    GatewayPortConfig, GatewayPortConfigArgs

    Usage string
    port usage name. enum: ha_control, ha_data, lan, wan
    AeDisableLacp bool
    if aggregated==true. To disable LCP support for the AE interface
    AeIdx string
    if aggregated==true. Users could force to use the designated AE name (must be an integer between 0 and 127)
    AeLacpForceUp bool
    For SRX Only, if aggregated==true.Sets the state of the interface as UP when the peer has limited LACP capability.\n Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n Note: Turning this on will enable force-up on one of the interfaces in the bundle only
    Aggregated bool
    Critical bool
    if want to generate port up/down alarm, set it to true
    Description string
    DisableAutoneg bool
    Disabled bool
    port admin up (true) / down (false)
    DslType string
    if wan_type==dsl. enum: adsl, vdsl
    DslVci int
    if wan_type==dsl 16 bit int
    DslVpi int
    if wan_type==dsl 8 bit int
    Duplex string
    enum: auto, full, half
    IpConfig Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigIpConfig
    Junos IP Config
    LteApn string
    if wan_type==lte
    LteAuth string
    if wan_type==lte. enum: chap, none, pap
    LteBackup bool
    LtePassword string
    if wan_type==lte
    LteUsername string
    if wan_type==lte
    Mtu int
    Name string
    name that we'll use to derive config
    Networks List<string>
    if usage==lan
    OuterVlanId int
    for Q-in-Q
    PoeDisabled bool
    PortNetwork string
    if usage==lan
    PreserveDscp bool
    whether to preserve dscp when sending traffic over VPN (SSR-only)
    Redundant bool
    if HA mode
    RethIdx int
    if HA mode
    RethNode string
    if HA mode
    RethNodes List<string>
    SSR only - supporting vlan-based redundancy (matching the size of networks)
    Speed string
    SsrNoVirtualMac bool
    when SSR is running as VM, this is required on certain hosting platforms
    SvrPortRange string
    for SSR only
    TrafficShaping Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigTrafficShaping
    VlanId int
    if WAN interface is on a VLAN
    VpnPaths Dictionary<string, Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigVpnPaths>
    WanArpPolicer string
    when wan_type==broadband. enum: default, max, recommended
    WanExtIp string
    optional, if spoke should reach this port by a different IP
    WanSourceNat Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigWanSourceNat
    optional, by default, source-NAT is performed on all WAN Ports using the interface-ip
    WanType string
    if usage==wan. enum: broadband, dsl, lte
    Usage string
    port usage name. enum: ha_control, ha_data, lan, wan
    AeDisableLacp bool
    if aggregated==true. To disable LCP support for the AE interface
    AeIdx string
    if aggregated==true. Users could force to use the designated AE name (must be an integer between 0 and 127)
    AeLacpForceUp bool
    For SRX Only, if aggregated==true.Sets the state of the interface as UP when the peer has limited LACP capability.\n Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n Note: Turning this on will enable force-up on one of the interfaces in the bundle only
    Aggregated bool
    Critical bool
    if want to generate port up/down alarm, set it to true
    Description string
    DisableAutoneg bool
    Disabled bool
    port admin up (true) / down (false)
    DslType string
    if wan_type==dsl. enum: adsl, vdsl
    DslVci int
    if wan_type==dsl 16 bit int
    DslVpi int
    if wan_type==dsl 8 bit int
    Duplex string
    enum: auto, full, half
    IpConfig GatewayPortConfigIpConfig
    Junos IP Config
    LteApn string
    if wan_type==lte
    LteAuth string
    if wan_type==lte. enum: chap, none, pap
    LteBackup bool
    LtePassword string
    if wan_type==lte
    LteUsername string
    if wan_type==lte
    Mtu int
    Name string
    name that we'll use to derive config
    Networks []string
    if usage==lan
    OuterVlanId int
    for Q-in-Q
    PoeDisabled bool
    PortNetwork string
    if usage==lan
    PreserveDscp bool
    whether to preserve dscp when sending traffic over VPN (SSR-only)
    Redundant bool
    if HA mode
    RethIdx int
    if HA mode
    RethNode string
    if HA mode
    RethNodes []string
    SSR only - supporting vlan-based redundancy (matching the size of networks)
    Speed string
    SsrNoVirtualMac bool
    when SSR is running as VM, this is required on certain hosting platforms
    SvrPortRange string
    for SSR only
    TrafficShaping GatewayPortConfigTrafficShaping
    VlanId int
    if WAN interface is on a VLAN
    VpnPaths map[string]GatewayPortConfigVpnPaths
    WanArpPolicer string
    when wan_type==broadband. enum: default, max, recommended
    WanExtIp string
    optional, if spoke should reach this port by a different IP
    WanSourceNat GatewayPortConfigWanSourceNat
    optional, by default, source-NAT is performed on all WAN Ports using the interface-ip
    WanType string
    if usage==wan. enum: broadband, dsl, lte
    usage String
    port usage name. enum: ha_control, ha_data, lan, wan
    aeDisableLacp Boolean
    if aggregated==true. To disable LCP support for the AE interface
    aeIdx String
    if aggregated==true. Users could force to use the designated AE name (must be an integer between 0 and 127)
    aeLacpForceUp Boolean
    For SRX Only, if aggregated==true.Sets the state of the interface as UP when the peer has limited LACP capability.\n Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n Note: Turning this on will enable force-up on one of the interfaces in the bundle only
    aggregated Boolean
    critical Boolean
    if want to generate port up/down alarm, set it to true
    description String
    disableAutoneg Boolean
    disabled Boolean
    port admin up (true) / down (false)
    dslType String
    if wan_type==dsl. enum: adsl, vdsl
    dslVci Integer
    if wan_type==dsl 16 bit int
    dslVpi Integer
    if wan_type==dsl 8 bit int
    duplex String
    enum: auto, full, half
    ipConfig GatewayPortConfigIpConfig
    Junos IP Config
    lteApn String
    if wan_type==lte
    lteAuth String
    if wan_type==lte. enum: chap, none, pap
    lteBackup Boolean
    ltePassword String
    if wan_type==lte
    lteUsername String
    if wan_type==lte
    mtu Integer
    name String
    name that we'll use to derive config
    networks List<String>
    if usage==lan
    outerVlanId Integer
    for Q-in-Q
    poeDisabled Boolean
    portNetwork String
    if usage==lan
    preserveDscp Boolean
    whether to preserve dscp when sending traffic over VPN (SSR-only)
    redundant Boolean
    if HA mode
    rethIdx Integer
    if HA mode
    rethNode String
    if HA mode
    rethNodes List<String>
    SSR only - supporting vlan-based redundancy (matching the size of networks)
    speed String
    ssrNoVirtualMac Boolean
    when SSR is running as VM, this is required on certain hosting platforms
    svrPortRange String
    for SSR only
    trafficShaping GatewayPortConfigTrafficShaping
    vlanId Integer
    if WAN interface is on a VLAN
    vpnPaths Map<String,GatewayPortConfigVpnPaths>
    wanArpPolicer String
    when wan_type==broadband. enum: default, max, recommended
    wanExtIp String
    optional, if spoke should reach this port by a different IP
    wanSourceNat GatewayPortConfigWanSourceNat
    optional, by default, source-NAT is performed on all WAN Ports using the interface-ip
    wanType String
    if usage==wan. enum: broadband, dsl, lte
    usage string
    port usage name. enum: ha_control, ha_data, lan, wan
    aeDisableLacp boolean
    if aggregated==true. To disable LCP support for the AE interface
    aeIdx string
    if aggregated==true. Users could force to use the designated AE name (must be an integer between 0 and 127)
    aeLacpForceUp boolean
    For SRX Only, if aggregated==true.Sets the state of the interface as UP when the peer has limited LACP capability.\n Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n Note: Turning this on will enable force-up on one of the interfaces in the bundle only
    aggregated boolean
    critical boolean
    if want to generate port up/down alarm, set it to true
    description string
    disableAutoneg boolean
    disabled boolean
    port admin up (true) / down (false)
    dslType string
    if wan_type==dsl. enum: adsl, vdsl
    dslVci number
    if wan_type==dsl 16 bit int
    dslVpi number
    if wan_type==dsl 8 bit int
    duplex string
    enum: auto, full, half
    ipConfig GatewayPortConfigIpConfig
    Junos IP Config
    lteApn string
    if wan_type==lte
    lteAuth string
    if wan_type==lte. enum: chap, none, pap
    lteBackup boolean
    ltePassword string
    if wan_type==lte
    lteUsername string
    if wan_type==lte
    mtu number
    name string
    name that we'll use to derive config
    networks string[]
    if usage==lan
    outerVlanId number
    for Q-in-Q
    poeDisabled boolean
    portNetwork string
    if usage==lan
    preserveDscp boolean
    whether to preserve dscp when sending traffic over VPN (SSR-only)
    redundant boolean
    if HA mode
    rethIdx number
    if HA mode
    rethNode string
    if HA mode
    rethNodes string[]
    SSR only - supporting vlan-based redundancy (matching the size of networks)
    speed string
    ssrNoVirtualMac boolean
    when SSR is running as VM, this is required on certain hosting platforms
    svrPortRange string
    for SSR only
    trafficShaping GatewayPortConfigTrafficShaping
    vlanId number
    if WAN interface is on a VLAN
    vpnPaths {[key: string]: GatewayPortConfigVpnPaths}
    wanArpPolicer string
    when wan_type==broadband. enum: default, max, recommended
    wanExtIp string
    optional, if spoke should reach this port by a different IP
    wanSourceNat GatewayPortConfigWanSourceNat
    optional, by default, source-NAT is performed on all WAN Ports using the interface-ip
    wanType string
    if usage==wan. enum: broadband, dsl, lte
    usage str
    port usage name. enum: ha_control, ha_data, lan, wan
    ae_disable_lacp bool
    if aggregated==true. To disable LCP support for the AE interface
    ae_idx str
    if aggregated==true. Users could force to use the designated AE name (must be an integer between 0 and 127)
    ae_lacp_force_up bool
    For SRX Only, if aggregated==true.Sets the state of the interface as UP when the peer has limited LACP capability.\n Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n Note: Turning this on will enable force-up on one of the interfaces in the bundle only
    aggregated bool
    critical bool
    if want to generate port up/down alarm, set it to true
    description str
    disable_autoneg bool
    disabled bool
    port admin up (true) / down (false)
    dsl_type str
    if wan_type==dsl. enum: adsl, vdsl
    dsl_vci int
    if wan_type==dsl 16 bit int
    dsl_vpi int
    if wan_type==dsl 8 bit int
    duplex str
    enum: auto, full, half
    ip_config GatewayPortConfigIpConfig
    Junos IP Config
    lte_apn str
    if wan_type==lte
    lte_auth str
    if wan_type==lte. enum: chap, none, pap
    lte_backup bool
    lte_password str
    if wan_type==lte
    lte_username str
    if wan_type==lte
    mtu int
    name str
    name that we'll use to derive config
    networks Sequence[str]
    if usage==lan
    outer_vlan_id int
    for Q-in-Q
    poe_disabled bool
    port_network str
    if usage==lan
    preserve_dscp bool
    whether to preserve dscp when sending traffic over VPN (SSR-only)
    redundant bool
    if HA mode
    reth_idx int
    if HA mode
    reth_node str
    if HA mode
    reth_nodes Sequence[str]
    SSR only - supporting vlan-based redundancy (matching the size of networks)
    speed str
    ssr_no_virtual_mac bool
    when SSR is running as VM, this is required on certain hosting platforms
    svr_port_range str
    for SSR only
    traffic_shaping GatewayPortConfigTrafficShaping
    vlan_id int
    if WAN interface is on a VLAN
    vpn_paths Mapping[str, GatewayPortConfigVpnPaths]
    wan_arp_policer str
    when wan_type==broadband. enum: default, max, recommended
    wan_ext_ip str
    optional, if spoke should reach this port by a different IP
    wan_source_nat GatewayPortConfigWanSourceNat
    optional, by default, source-NAT is performed on all WAN Ports using the interface-ip
    wan_type str
    if usage==wan. enum: broadband, dsl, lte
    usage String
    port usage name. enum: ha_control, ha_data, lan, wan
    aeDisableLacp Boolean
    if aggregated==true. To disable LCP support for the AE interface
    aeIdx String
    if aggregated==true. Users could force to use the designated AE name (must be an integer between 0 and 127)
    aeLacpForceUp Boolean
    For SRX Only, if aggregated==true.Sets the state of the interface as UP when the peer has limited LACP capability.\n Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n Note: Turning this on will enable force-up on one of the interfaces in the bundle only
    aggregated Boolean
    critical Boolean
    if want to generate port up/down alarm, set it to true
    description String
    disableAutoneg Boolean
    disabled Boolean
    port admin up (true) / down (false)
    dslType String
    if wan_type==dsl. enum: adsl, vdsl
    dslVci Number
    if wan_type==dsl 16 bit int
    dslVpi Number
    if wan_type==dsl 8 bit int
    duplex String
    enum: auto, full, half
    ipConfig Property Map
    Junos IP Config
    lteApn String
    if wan_type==lte
    lteAuth String
    if wan_type==lte. enum: chap, none, pap
    lteBackup Boolean
    ltePassword String
    if wan_type==lte
    lteUsername String
    if wan_type==lte
    mtu Number
    name String
    name that we'll use to derive config
    networks List<String>
    if usage==lan
    outerVlanId Number
    for Q-in-Q
    poeDisabled Boolean
    portNetwork String
    if usage==lan
    preserveDscp Boolean
    whether to preserve dscp when sending traffic over VPN (SSR-only)
    redundant Boolean
    if HA mode
    rethIdx Number
    if HA mode
    rethNode String
    if HA mode
    rethNodes List<String>
    SSR only - supporting vlan-based redundancy (matching the size of networks)
    speed String
    ssrNoVirtualMac Boolean
    when SSR is running as VM, this is required on certain hosting platforms
    svrPortRange String
    for SSR only
    trafficShaping Property Map
    vlanId Number
    if WAN interface is on a VLAN
    vpnPaths Map<Property Map>
    wanArpPolicer String
    when wan_type==broadband. enum: default, max, recommended
    wanExtIp String
    optional, if spoke should reach this port by a different IP
    wanSourceNat Property Map
    optional, by default, source-NAT is performed on all WAN Ports using the interface-ip
    wanType String
    if usage==wan. enum: broadband, dsl, lte

    GatewayPortConfigIpConfig, GatewayPortConfigIpConfigArgs

    Dns List<string>
    except for out-of_band interface (vme/em0/fxp0)
    DnsSuffixes List<string>
    except for out-of_band interface (vme/em0/fxp0)
    Gateway string
    except for out-of_band interface (vme/em0/fxp0)
    Ip string
    Netmask string
    used only if subnet is not specified in networks
    Network string
    optional, the network to be used for mgmt
    PoserPassword string
    if type==pppoe
    PppoeAuth string
    if type==pppoe. enum: chap, none, pap
    PppoeUsername string
    if type==pppoe
    Type string
    enum: dhcp, pppoe, static
    Dns []string
    except for out-of_band interface (vme/em0/fxp0)
    DnsSuffixes []string
    except for out-of_band interface (vme/em0/fxp0)
    Gateway string
    except for out-of_band interface (vme/em0/fxp0)
    Ip string
    Netmask string
    used only if subnet is not specified in networks
    Network string
    optional, the network to be used for mgmt
    PoserPassword string
    if type==pppoe
    PppoeAuth string
    if type==pppoe. enum: chap, none, pap
    PppoeUsername string
    if type==pppoe
    Type string
    enum: dhcp, pppoe, static
    dns List<String>
    except for out-of_band interface (vme/em0/fxp0)
    dnsSuffixes List<String>
    except for out-of_band interface (vme/em0/fxp0)
    gateway String
    except for out-of_band interface (vme/em0/fxp0)
    ip String
    netmask String
    used only if subnet is not specified in networks
    network String
    optional, the network to be used for mgmt
    poserPassword String
    if type==pppoe
    pppoeAuth String
    if type==pppoe. enum: chap, none, pap
    pppoeUsername String
    if type==pppoe
    type String
    enum: dhcp, pppoe, static
    dns string[]
    except for out-of_band interface (vme/em0/fxp0)
    dnsSuffixes string[]
    except for out-of_band interface (vme/em0/fxp0)
    gateway string
    except for out-of_band interface (vme/em0/fxp0)
    ip string
    netmask string
    used only if subnet is not specified in networks
    network string
    optional, the network to be used for mgmt
    poserPassword string
    if type==pppoe
    pppoeAuth string
    if type==pppoe. enum: chap, none, pap
    pppoeUsername string
    if type==pppoe
    type string
    enum: dhcp, pppoe, static
    dns Sequence[str]
    except for out-of_band interface (vme/em0/fxp0)
    dns_suffixes Sequence[str]
    except for out-of_band interface (vme/em0/fxp0)
    gateway str
    except for out-of_band interface (vme/em0/fxp0)
    ip str
    netmask str
    used only if subnet is not specified in networks
    network str
    optional, the network to be used for mgmt
    poser_password str
    if type==pppoe
    pppoe_auth str
    if type==pppoe. enum: chap, none, pap
    pppoe_username str
    if type==pppoe
    type str
    enum: dhcp, pppoe, static
    dns List<String>
    except for out-of_band interface (vme/em0/fxp0)
    dnsSuffixes List<String>
    except for out-of_band interface (vme/em0/fxp0)
    gateway String
    except for out-of_band interface (vme/em0/fxp0)
    ip String
    netmask String
    used only if subnet is not specified in networks
    network String
    optional, the network to be used for mgmt
    poserPassword String
    if type==pppoe
    pppoeAuth String
    if type==pppoe. enum: chap, none, pap
    pppoeUsername String
    if type==pppoe
    type String
    enum: dhcp, pppoe, static

    GatewayPortConfigTrafficShaping, GatewayPortConfigTrafficShapingArgs

    ClassPercentages List<int>
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    Enabled bool
    ClassPercentages []int
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    Enabled bool
    classPercentages List<Integer>
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled Boolean
    classPercentages number[]
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled boolean
    class_percentages Sequence[int]
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled bool
    classPercentages List<Number>
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled Boolean

    GatewayPortConfigVpnPaths, GatewayPortConfigVpnPathsArgs

    BfdProfile string
    enum: broadband, lte
    BfdUseTunnelMode bool
    whether to use tunnel mode. SSR only
    Preference int
    for a given VPN, when path_selection.strategy==simple, the preference for a path (lower is preferred)
    Role string
    enum: hub, spoke
    TrafficShaping Pulumi.JuniperMist.Device.Inputs.GatewayPortConfigVpnPathsTrafficShaping
    BfdProfile string
    enum: broadband, lte
    BfdUseTunnelMode bool
    whether to use tunnel mode. SSR only
    Preference int
    for a given VPN, when path_selection.strategy==simple, the preference for a path (lower is preferred)
    Role string
    enum: hub, spoke
    TrafficShaping GatewayPortConfigVpnPathsTrafficShaping
    bfdProfile String
    enum: broadband, lte
    bfdUseTunnelMode Boolean
    whether to use tunnel mode. SSR only
    preference Integer
    for a given VPN, when path_selection.strategy==simple, the preference for a path (lower is preferred)
    role String
    enum: hub, spoke
    trafficShaping GatewayPortConfigVpnPathsTrafficShaping
    bfdProfile string
    enum: broadband, lte
    bfdUseTunnelMode boolean
    whether to use tunnel mode. SSR only
    preference number
    for a given VPN, when path_selection.strategy==simple, the preference for a path (lower is preferred)
    role string
    enum: hub, spoke
    trafficShaping GatewayPortConfigVpnPathsTrafficShaping
    bfd_profile str
    enum: broadband, lte
    bfd_use_tunnel_mode bool
    whether to use tunnel mode. SSR only
    preference int
    for a given VPN, when path_selection.strategy==simple, the preference for a path (lower is preferred)
    role str
    enum: hub, spoke
    traffic_shaping GatewayPortConfigVpnPathsTrafficShaping
    bfdProfile String
    enum: broadband, lte
    bfdUseTunnelMode Boolean
    whether to use tunnel mode. SSR only
    preference Number
    for a given VPN, when path_selection.strategy==simple, the preference for a path (lower is preferred)
    role String
    enum: hub, spoke
    trafficShaping Property Map

    GatewayPortConfigVpnPathsTrafficShaping, GatewayPortConfigVpnPathsTrafficShapingArgs

    ClassPercentages List<int>
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    Enabled bool
    ClassPercentages []int
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    Enabled bool
    classPercentages List<Integer>
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled Boolean
    classPercentages number[]
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled boolean
    class_percentages Sequence[int]
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled bool
    classPercentages List<Number>
    percentages for differet class of traffic: high / medium / low / best-effort sum must be equal to 100
    enabled Boolean

    GatewayPortConfigWanSourceNat, GatewayPortConfigWanSourceNatArgs

    Disabled bool
    or to disable the source-nat
    NatPool string
    if alternative nat_pool is desired
    Disabled bool
    or to disable the source-nat
    NatPool string
    if alternative nat_pool is desired
    disabled Boolean
    or to disable the source-nat
    natPool String
    if alternative nat_pool is desired
    disabled boolean
    or to disable the source-nat
    natPool string
    if alternative nat_pool is desired
    disabled bool
    or to disable the source-nat
    nat_pool str
    if alternative nat_pool is desired
    disabled Boolean
    or to disable the source-nat
    natPool String
    if alternative nat_pool is desired

    GatewayPortMirroring, GatewayPortMirroringArgs

    GatewayPortMirroringPortMirror, GatewayPortMirroringPortMirrorArgs

    FamilyType string
    IngressPortIds List<string>
    OutputPortId string
    Rate int
    RunLength int
    familyType String
    ingressPortIds List<String>
    outputPortId String
    rate Integer
    runLength Integer
    familyType string
    ingressPortIds string[]
    outputPortId string
    rate number
    runLength number
    familyType String
    ingressPortIds List<String>
    outputPortId String
    rate Number
    runLength Number

    GatewayRoutingPolicies, GatewayRoutingPoliciesArgs

    Terms List<Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesTerm>
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    Terms []GatewayRoutingPoliciesTerm
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    terms List<GatewayRoutingPoliciesTerm>
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    terms GatewayRoutingPoliciesTerm[]
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    terms Sequence[GatewayRoutingPoliciesTerm]
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    terms List<Property Map>
    zero or more criteria/filter can be specified to match the term, all criteria have to be met

    GatewayRoutingPoliciesTerm, GatewayRoutingPoliciesTermArgs

    Action Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermAction
    when used as import policy
    Matching Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermMatching
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    Action GatewayRoutingPoliciesTermAction
    when used as import policy
    Matching GatewayRoutingPoliciesTermMatching
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    action GatewayRoutingPoliciesTermAction
    when used as import policy
    matching GatewayRoutingPoliciesTermMatching
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    action GatewayRoutingPoliciesTermAction
    when used as import policy
    matching GatewayRoutingPoliciesTermMatching
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    action GatewayRoutingPoliciesTermAction
    when used as import policy
    matching GatewayRoutingPoliciesTermMatching
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    action Property Map
    when used as import policy
    matching Property Map
    zero or more criteria/filter can be specified to match the term, all criteria have to be met

    GatewayRoutingPoliciesTermAction, GatewayRoutingPoliciesTermActionArgs

    Accept bool
    AddCommunities List<string>
    AddTargetVrfs List<string>
    for SSR, hub decides how VRF routes are leaked on spoke
    Communities List<string>
    when used as export policy, optional
    ExcludeAsPaths List<string>
    when used as export policy, optional. To exclude certain AS
    ExcludeCommunities List<string>
    ExportCommunitites List<string>
    when used as export policy, optional
    LocalPreference string
    optional, for an import policy, local_preference can be changed
    PrependAsPaths List<string>
    when used as export policy, optional. By default, the local AS will be prepended, to change it
    Accept bool
    AddCommunities []string
    AddTargetVrfs []string
    for SSR, hub decides how VRF routes are leaked on spoke
    Communities []string
    when used as export policy, optional
    ExcludeAsPaths []string
    when used as export policy, optional. To exclude certain AS
    ExcludeCommunities []string
    ExportCommunitites []string
    when used as export policy, optional
    LocalPreference string
    optional, for an import policy, local_preference can be changed
    PrependAsPaths []string
    when used as export policy, optional. By default, the local AS will be prepended, to change it
    accept Boolean
    addCommunities List<String>
    addTargetVrfs List<String>
    for SSR, hub decides how VRF routes are leaked on spoke
    communities List<String>
    when used as export policy, optional
    excludeAsPaths List<String>
    when used as export policy, optional. To exclude certain AS
    excludeCommunities List<String>
    exportCommunitites List<String>
    when used as export policy, optional
    localPreference String
    optional, for an import policy, local_preference can be changed
    prependAsPaths List<String>
    when used as export policy, optional. By default, the local AS will be prepended, to change it
    accept boolean
    addCommunities string[]
    addTargetVrfs string[]
    for SSR, hub decides how VRF routes are leaked on spoke
    communities string[]
    when used as export policy, optional
    excludeAsPaths string[]
    when used as export policy, optional. To exclude certain AS
    excludeCommunities string[]
    exportCommunitites string[]
    when used as export policy, optional
    localPreference string
    optional, for an import policy, local_preference can be changed
    prependAsPaths string[]
    when used as export policy, optional. By default, the local AS will be prepended, to change it
    accept bool
    add_communities Sequence[str]
    add_target_vrfs Sequence[str]
    for SSR, hub decides how VRF routes are leaked on spoke
    communities Sequence[str]
    when used as export policy, optional
    exclude_as_paths Sequence[str]
    when used as export policy, optional. To exclude certain AS
    exclude_communities Sequence[str]
    export_communitites Sequence[str]
    when used as export policy, optional
    local_preference str
    optional, for an import policy, local_preference can be changed
    prepend_as_paths Sequence[str]
    when used as export policy, optional. By default, the local AS will be prepended, to change it
    accept Boolean
    addCommunities List<String>
    addTargetVrfs List<String>
    for SSR, hub decides how VRF routes are leaked on spoke
    communities List<String>
    when used as export policy, optional
    excludeAsPaths List<String>
    when used as export policy, optional. To exclude certain AS
    excludeCommunities List<String>
    exportCommunitites List<String>
    when used as export policy, optional
    localPreference String
    optional, for an import policy, local_preference can be changed
    prependAsPaths List<String>
    when used as export policy, optional. By default, the local AS will be prepended, to change it

    GatewayRoutingPoliciesTermMatching, GatewayRoutingPoliciesTermMatchingArgs

    AsPaths List<string>
    takes regular expression
    Communities List<string>
    Networks List<string>
    Prefixes List<string>
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    Protocols List<string>
    direct, bgp, osp, ...
    RouteExists Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermMatchingRouteExists
    VpnNeighborMacs List<string>
    overlay-facing criteria (used for bgp_config where via=vpn)
    VpnPathSla Pulumi.JuniperMist.Device.Inputs.GatewayRoutingPoliciesTermMatchingVpnPathSla
    VpnPaths List<string>
    overlay-facing criteria (used for bgp_config where via=vpn) ordered-
    AsPaths []string
    takes regular expression
    Communities []string
    Networks []string
    Prefixes []string
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    Protocols []string
    direct, bgp, osp, ...
    RouteExists GatewayRoutingPoliciesTermMatchingRouteExists
    VpnNeighborMacs []string
    overlay-facing criteria (used for bgp_config where via=vpn)
    VpnPathSla GatewayRoutingPoliciesTermMatchingVpnPathSla
    VpnPaths []string
    overlay-facing criteria (used for bgp_config where via=vpn) ordered-
    asPaths List<String>
    takes regular expression
    communities List<String>
    networks List<String>
    prefixes List<String>
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    protocols List<String>
    direct, bgp, osp, ...
    routeExists GatewayRoutingPoliciesTermMatchingRouteExists
    vpnNeighborMacs List<String>
    overlay-facing criteria (used for bgp_config where via=vpn)
    vpnPathSla GatewayRoutingPoliciesTermMatchingVpnPathSla
    vpnPaths List<String>
    overlay-facing criteria (used for bgp_config where via=vpn) ordered-
    asPaths string[]
    takes regular expression
    communities string[]
    networks string[]
    prefixes string[]
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    protocols string[]
    direct, bgp, osp, ...
    routeExists GatewayRoutingPoliciesTermMatchingRouteExists
    vpnNeighborMacs string[]
    overlay-facing criteria (used for bgp_config where via=vpn)
    vpnPathSla GatewayRoutingPoliciesTermMatchingVpnPathSla
    vpnPaths string[]
    overlay-facing criteria (used for bgp_config where via=vpn) ordered-
    as_paths Sequence[str]
    takes regular expression
    communities Sequence[str]
    networks Sequence[str]
    prefixes Sequence[str]
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    protocols Sequence[str]
    direct, bgp, osp, ...
    route_exists GatewayRoutingPoliciesTermMatchingRouteExists
    vpn_neighbor_macs Sequence[str]
    overlay-facing criteria (used for bgp_config where via=vpn)
    vpn_path_sla GatewayRoutingPoliciesTermMatchingVpnPathSla
    vpn_paths Sequence[str]
    overlay-facing criteria (used for bgp_config where via=vpn) ordered-
    asPaths List<String>
    takes regular expression
    communities List<String>
    networks List<String>
    prefixes List<String>
    zero or more criteria/filter can be specified to match the term, all criteria have to be met
    protocols List<String>
    direct, bgp, osp, ...
    routeExists Property Map
    vpnNeighborMacs List<String>
    overlay-facing criteria (used for bgp_config where via=vpn)
    vpnPathSla Property Map
    vpnPaths List<String>
    overlay-facing criteria (used for bgp_config where via=vpn) ordered-

    GatewayRoutingPoliciesTermMatchingRouteExists, GatewayRoutingPoliciesTermMatchingRouteExistsArgs

    Route string
    VrfName string
    name of the vrf instance it can also be the name of the VPN or wan if they
    Route string
    VrfName string
    name of the vrf instance it can also be the name of the VPN or wan if they
    route String
    vrfName String
    name of the vrf instance it can also be the name of the VPN or wan if they
    route string
    vrfName string
    name of the vrf instance it can also be the name of the VPN or wan if they
    route str
    vrf_name str
    name of the vrf instance it can also be the name of the VPN or wan if they
    route String
    vrfName String
    name of the vrf instance it can also be the name of the VPN or wan if they

    GatewayRoutingPoliciesTermMatchingVpnPathSla, GatewayRoutingPoliciesTermMatchingVpnPathSlaArgs

    maxJitter Integer
    maxLatency Integer
    maxLoss Integer
    maxJitter number
    maxLatency number
    maxLoss number
    maxJitter Number
    maxLatency Number
    maxLoss Number

    GatewayServicePolicy, GatewayServicePolicyArgs

    Action string
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy action). enum: allow, deny
    Appqoe Pulumi.JuniperMist.Device.Inputs.GatewayServicePolicyAppqoe
    For SRX Only
    Ewfs List<Pulumi.JuniperMist.Device.Inputs.GatewayServicePolicyEwf>
    Idp Pulumi.JuniperMist.Device.Inputs.GatewayServicePolicyIdp
    LocalRouting bool
    access within the same VRF
    Name string
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy name)
    PathPreference string
    by default, we derive all paths available and use them optionally, you can customize by using path_preference
    ServicepolicyId string
    used to link servicepolicy defined at org level and overwrite some attributes
    Services List<string>
    Required when servicepolicy_id is not defined. List of Applications / Desctinations
    Tenants List<string>
    Required when servicepolicy_id is not defined. List of Networks / Users
    Action string
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy action). enum: allow, deny
    Appqoe GatewayServicePolicyAppqoe
    For SRX Only
    Ewfs []GatewayServicePolicyEwf
    Idp GatewayServicePolicyIdp
    LocalRouting bool
    access within the same VRF
    Name string
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy name)
    PathPreference string
    by default, we derive all paths available and use them optionally, you can customize by using path_preference
    ServicepolicyId string
    used to link servicepolicy defined at org level and overwrite some attributes
    Services []string
    Required when servicepolicy_id is not defined. List of Applications / Desctinations
    Tenants []string
    Required when servicepolicy_id is not defined. List of Networks / Users
    action String
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy action). enum: allow, deny
    appqoe GatewayServicePolicyAppqoe
    For SRX Only
    ewfs List<GatewayServicePolicyEwf>
    idp GatewayServicePolicyIdp
    localRouting Boolean
    access within the same VRF
    name String
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy name)
    pathPreference String
    by default, we derive all paths available and use them optionally, you can customize by using path_preference
    servicepolicyId String
    used to link servicepolicy defined at org level and overwrite some attributes
    services List<String>
    Required when servicepolicy_id is not defined. List of Applications / Desctinations
    tenants List<String>
    Required when servicepolicy_id is not defined. List of Networks / Users
    action string
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy action). enum: allow, deny
    appqoe GatewayServicePolicyAppqoe
    For SRX Only
    ewfs GatewayServicePolicyEwf[]
    idp GatewayServicePolicyIdp
    localRouting boolean
    access within the same VRF
    name string
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy name)
    pathPreference string
    by default, we derive all paths available and use them optionally, you can customize by using path_preference
    servicepolicyId string
    used to link servicepolicy defined at org level and overwrite some attributes
    services string[]
    Required when servicepolicy_id is not defined. List of Applications / Desctinations
    tenants string[]
    Required when servicepolicy_id is not defined. List of Networks / Users
    action str
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy action). enum: allow, deny
    appqoe GatewayServicePolicyAppqoe
    For SRX Only
    ewfs Sequence[GatewayServicePolicyEwf]
    idp GatewayServicePolicyIdp
    local_routing bool
    access within the same VRF
    name str
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy name)
    path_preference str
    by default, we derive all paths available and use them optionally, you can customize by using path_preference
    servicepolicy_id str
    used to link servicepolicy defined at org level and overwrite some attributes
    services Sequence[str]
    Required when servicepolicy_id is not defined. List of Applications / Desctinations
    tenants Sequence[str]
    Required when servicepolicy_id is not defined. List of Networks / Users
    action String
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy action). enum: allow, deny
    appqoe Property Map
    For SRX Only
    ewfs List<Property Map>
    idp Property Map
    localRouting Boolean
    access within the same VRF
    name String
    Required when servicepolicy_id is not defined, optional otherwise (override the servicepolicy name)
    pathPreference String
    by default, we derive all paths available and use them optionally, you can customize by using path_preference
    servicepolicyId String
    used to link servicepolicy defined at org level and overwrite some attributes
    services List<String>
    Required when servicepolicy_id is not defined. List of Applications / Desctinations
    tenants List<String>
    Required when servicepolicy_id is not defined. List of Networks / Users

    GatewayServicePolicyAppqoe, GatewayServicePolicyAppqoeArgs

    Enabled bool
    Enabled bool
    enabled Boolean
    enabled boolean
    enabled bool
    enabled Boolean

    GatewayServicePolicyEwf, GatewayServicePolicyEwfArgs

    AlertOnly bool
    BlockMessage string
    Enabled bool
    Profile string
    enum: critical, standard, strict
    AlertOnly bool
    BlockMessage string
    Enabled bool
    Profile string
    enum: critical, standard, strict
    alertOnly Boolean
    blockMessage String
    enabled Boolean
    profile String
    enum: critical, standard, strict
    alertOnly boolean
    blockMessage string
    enabled boolean
    profile string
    enum: critical, standard, strict
    alert_only bool
    block_message str
    enabled bool
    profile str
    enum: critical, standard, strict
    alertOnly Boolean
    blockMessage String
    enabled Boolean
    profile String
    enum: critical, standard, strict

    GatewayServicePolicyIdp, GatewayServicePolicyIdpArgs

    AlertOnly bool
    Enabled bool
    IdpprofileId string
    org_level IDP Profile can be used, this takes precedence over profile
    Profile string
    strict (default) / standard / or keys from from idp_profiles
    AlertOnly bool
    Enabled bool
    IdpprofileId string
    org_level IDP Profile can be used, this takes precedence over profile
    Profile string
    strict (default) / standard / or keys from from idp_profiles
    alertOnly Boolean
    enabled Boolean
    idpprofileId String
    org_level IDP Profile can be used, this takes precedence over profile
    profile String
    strict (default) / standard / or keys from from idp_profiles
    alertOnly boolean
    enabled boolean
    idpprofileId string
    org_level IDP Profile can be used, this takes precedence over profile
    profile string
    strict (default) / standard / or keys from from idp_profiles
    alert_only bool
    enabled bool
    idpprofile_id str
    org_level IDP Profile can be used, this takes precedence over profile
    profile str
    strict (default) / standard / or keys from from idp_profiles
    alertOnly Boolean
    enabled Boolean
    idpprofileId String
    org_level IDP Profile can be used, this takes precedence over profile
    profile String
    strict (default) / standard / or keys from from idp_profiles

    GatewayTunnelConfigs, GatewayTunnelConfigsArgs

    AutoProvision Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsAutoProvision
    IkeLifetime int
    Only if provider== custom-ipsec
    IkeMode string
    Only if provider== custom-ipsec. enum: aggressive, main
    IkeProposals List<Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsIkeProposal>
    if provider== custom-ipsec
    IpsecLifetime int
    if provider== custom-ipsec
    IpsecProposals List<Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsIpsecProposal>
    Only if provider== custom-ipsec
    LocalId string
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    Mode string
    enum: active-active, active-standby
    Networks List<string>
    networks reachable via this tunnel
    Primary Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsPrimary
    Probe Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsProbe
    Only if provider== custom-ipsec
    Protocol string
    Only if provider== custom-ipsec. enum: gre, ipsec
    Provider string
    enum: custom-ipsec, customer-gre, jse-ipsec, zscaler-gre, zscaler-ipsec
    Psk string
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    Secondary Pulumi.JuniperMist.Device.Inputs.GatewayTunnelConfigsSecondary
    Version string
    Only if provider== custom-gre or provider== custom-ipsec. enum: 1, 2
    AutoProvision GatewayTunnelConfigsAutoProvision
    IkeLifetime int
    Only if provider== custom-ipsec
    IkeMode string
    Only if provider== custom-ipsec. enum: aggressive, main
    IkeProposals []GatewayTunnelConfigsIkeProposal
    if provider== custom-ipsec
    IpsecLifetime int
    if provider== custom-ipsec
    IpsecProposals []GatewayTunnelConfigsIpsecProposal
    Only if provider== custom-ipsec
    LocalId string
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    Mode string
    enum: active-active, active-standby
    Networks []string
    networks reachable via this tunnel
    Primary GatewayTunnelConfigsPrimary
    Probe GatewayTunnelConfigsProbe
    Only if provider== custom-ipsec
    Protocol string
    Only if provider== custom-ipsec. enum: gre, ipsec
    Provider string
    enum: custom-ipsec, customer-gre, jse-ipsec, zscaler-gre, zscaler-ipsec
    Psk string
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    Secondary GatewayTunnelConfigsSecondary
    Version string
    Only if provider== custom-gre or provider== custom-ipsec. enum: 1, 2
    autoProvision GatewayTunnelConfigsAutoProvision
    ikeLifetime Integer
    Only if provider== custom-ipsec
    ikeMode String
    Only if provider== custom-ipsec. enum: aggressive, main
    ikeProposals List<GatewayTunnelConfigsIkeProposal>
    if provider== custom-ipsec
    ipsecLifetime Integer
    if provider== custom-ipsec
    ipsecProposals List<GatewayTunnelConfigsIpsecProposal>
    Only if provider== custom-ipsec
    localId String
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    mode String
    enum: active-active, active-standby
    networks List<String>
    networks reachable via this tunnel
    primary GatewayTunnelConfigsPrimary
    probe GatewayTunnelConfigsProbe
    Only if provider== custom-ipsec
    protocol String
    Only if provider== custom-ipsec. enum: gre, ipsec
    provider String
    enum: custom-ipsec, customer-gre, jse-ipsec, zscaler-gre, zscaler-ipsec
    psk String
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    secondary GatewayTunnelConfigsSecondary
    version String
    Only if provider== custom-gre or provider== custom-ipsec. enum: 1, 2
    autoProvision GatewayTunnelConfigsAutoProvision
    ikeLifetime number
    Only if provider== custom-ipsec
    ikeMode string
    Only if provider== custom-ipsec. enum: aggressive, main
    ikeProposals GatewayTunnelConfigsIkeProposal[]
    if provider== custom-ipsec
    ipsecLifetime number
    if provider== custom-ipsec
    ipsecProposals GatewayTunnelConfigsIpsecProposal[]
    Only if provider== custom-ipsec
    localId string
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    mode string
    enum: active-active, active-standby
    networks string[]
    networks reachable via this tunnel
    primary GatewayTunnelConfigsPrimary
    probe GatewayTunnelConfigsProbe
    Only if provider== custom-ipsec
    protocol string
    Only if provider== custom-ipsec. enum: gre, ipsec
    provider string
    enum: custom-ipsec, customer-gre, jse-ipsec, zscaler-gre, zscaler-ipsec
    psk string
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    secondary GatewayTunnelConfigsSecondary
    version string
    Only if provider== custom-gre or provider== custom-ipsec. enum: 1, 2
    auto_provision GatewayTunnelConfigsAutoProvision
    ike_lifetime int
    Only if provider== custom-ipsec
    ike_mode str
    Only if provider== custom-ipsec. enum: aggressive, main
    ike_proposals Sequence[GatewayTunnelConfigsIkeProposal]
    if provider== custom-ipsec
    ipsec_lifetime int
    if provider== custom-ipsec
    ipsec_proposals Sequence[GatewayTunnelConfigsIpsecProposal]
    Only if provider== custom-ipsec
    local_id str
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    mode str
    enum: active-active, active-standby
    networks Sequence[str]
    networks reachable via this tunnel
    primary GatewayTunnelConfigsPrimary
    probe GatewayTunnelConfigsProbe
    Only if provider== custom-ipsec
    protocol str
    Only if provider== custom-ipsec. enum: gre, ipsec
    provider str
    enum: custom-ipsec, customer-gre, jse-ipsec, zscaler-gre, zscaler-ipsec
    psk str
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    secondary GatewayTunnelConfigsSecondary
    version str
    Only if provider== custom-gre or provider== custom-ipsec. enum: 1, 2
    autoProvision Property Map
    ikeLifetime Number
    Only if provider== custom-ipsec
    ikeMode String
    Only if provider== custom-ipsec. enum: aggressive, main
    ikeProposals List<Property Map>
    if provider== custom-ipsec
    ipsecLifetime Number
    if provider== custom-ipsec
    ipsecProposals List<Property Map>
    Only if provider== custom-ipsec
    localId String
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    mode String
    enum: active-active, active-standby
    networks List<String>
    networks reachable via this tunnel
    primary Property Map
    probe Property Map
    Only if provider== custom-ipsec
    protocol String
    Only if provider== custom-ipsec. enum: gre, ipsec
    provider String
    enum: custom-ipsec, customer-gre, jse-ipsec, zscaler-gre, zscaler-ipsec
    psk String
    Only if:

    • provider== zscaler-ipsec
    • provider==jse-ipsec
    • provider== custom-ipsec
    secondary Property Map
    version String
    Only if provider== custom-gre or provider== custom-ipsec. enum: 1, 2

    GatewayTunnelConfigsAutoProvision, GatewayTunnelConfigsAutoProvisionArgs

    GatewayTunnelConfigsAutoProvisionLatlng, GatewayTunnelConfigsAutoProvisionLatlngArgs

    Lat double
    Lng double
    Lat float64
    Lng float64
    lat Double
    lng Double
    lat number
    lng number
    lat float
    lng float
    lat Number
    lng Number

    GatewayTunnelConfigsAutoProvisionPrimary, GatewayTunnelConfigsAutoProvisionPrimaryArgs

    NumHosts string
    WanNames List<string>
    optional, only needed if vars_only==false
    NumHosts string
    WanNames []string
    optional, only needed if vars_only==false
    numHosts String
    wanNames List<String>
    optional, only needed if vars_only==false
    numHosts string
    wanNames string[]
    optional, only needed if vars_only==false
    num_hosts str
    wan_names Sequence[str]
    optional, only needed if vars_only==false
    numHosts String
    wanNames List<String>
    optional, only needed if vars_only==false

    GatewayTunnelConfigsAutoProvisionSecondary, GatewayTunnelConfigsAutoProvisionSecondaryArgs

    NumHosts string
    WanNames List<string>
    optional, only needed if vars_only==false
    NumHosts string
    WanNames []string
    optional, only needed if vars_only==false
    numHosts String
    wanNames List<String>
    optional, only needed if vars_only==false
    numHosts string
    wanNames string[]
    optional, only needed if vars_only==false
    num_hosts str
    wan_names Sequence[str]
    optional, only needed if vars_only==false
    numHosts String
    wanNames List<String>
    optional, only needed if vars_only==false

    GatewayTunnelConfigsIkeProposal, GatewayTunnelConfigsIkeProposalArgs

    AuthAlgo string
    enum: md5, sha1, sha2
    DhGroup string
    enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    EncAlgo string
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    AuthAlgo string
    enum: md5, sha1, sha2
    DhGroup string
    enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    EncAlgo string
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    authAlgo String
    enum: md5, sha1, sha2
    dhGroup String
    enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    encAlgo String
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    authAlgo string
    enum: md5, sha1, sha2
    dhGroup string
    enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    encAlgo string
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    auth_algo str
    enum: md5, sha1, sha2
    dh_group str
    enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    enc_algo str
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    authAlgo String
    enum: md5, sha1, sha2
    dhGroup String
    enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    encAlgo String
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256

    GatewayTunnelConfigsIpsecProposal, GatewayTunnelConfigsIpsecProposalArgs

    AuthAlgo string
    enum: md5, sha1, sha2
    DhGroup string
    Only if provider== custom-ipsec. enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    EncAlgo string
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    AuthAlgo string
    enum: md5, sha1, sha2
    DhGroup string
    Only if provider== custom-ipsec. enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    EncAlgo string
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    authAlgo String
    enum: md5, sha1, sha2
    dhGroup String
    Only if provider== custom-ipsec. enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    encAlgo String
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    authAlgo string
    enum: md5, sha1, sha2
    dhGroup string
    Only if provider== custom-ipsec. enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    encAlgo string
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    auth_algo str
    enum: md5, sha1, sha2
    dh_group str
    Only if provider== custom-ipsec. enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    enc_algo str
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256
    authAlgo String
    enum: md5, sha1, sha2
    dhGroup String
    Only if provider== custom-ipsec. enum:

    • 1
    • 2 (1024-bit)
    • 5
    • 14 (default, 2048-bit)
    • 15 (3072-bit)
    • 16 (4096-bit)
    • 19 (256-bit ECP)
    • 20 (384-bit ECP)
    • 21 (521-bit ECP)
    • 24 (2048-bit ECP)
    encAlgo String
    enum: 3des, aes128, aes256, aes_gcm128, aes_gcm256

    GatewayTunnelConfigsPrimary, GatewayTunnelConfigsPrimaryArgs

    Hosts List<string>
    InternalIps List<string>
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    ProbeIps List<string>
    RemoteIds List<string>
    Only if provider== custom-ipsec
    WanNames List<string>
    Hosts []string
    InternalIps []string
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    ProbeIps []string
    RemoteIds []string
    Only if provider== custom-ipsec
    WanNames []string
    hosts List<String>
    internalIps List<String>
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probeIps List<String>
    remoteIds List<String>
    Only if provider== custom-ipsec
    wanNames List<String>
    hosts string[]
    internalIps string[]
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probeIps string[]
    remoteIds string[]
    Only if provider== custom-ipsec
    wanNames string[]
    hosts Sequence[str]
    internal_ips Sequence[str]
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probe_ips Sequence[str]
    remote_ids Sequence[str]
    Only if provider== custom-ipsec
    wan_names Sequence[str]
    hosts List<String>
    internalIps List<String>
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probeIps List<String>
    remoteIds List<String>
    Only if provider== custom-ipsec
    wanNames List<String>

    GatewayTunnelConfigsProbe, GatewayTunnelConfigsProbeArgs

    Interval int
    how often to trigger the probe
    Threshold int
    number of consecutive misses before declaring the tunnel down
    Timeout int
    time within which to complete the connectivity check
    Type string
    enum: http, icmp
    Interval int
    how often to trigger the probe
    Threshold int
    number of consecutive misses before declaring the tunnel down
    Timeout int
    time within which to complete the connectivity check
    Type string
    enum: http, icmp
    interval Integer
    how often to trigger the probe
    threshold Integer
    number of consecutive misses before declaring the tunnel down
    timeout Integer
    time within which to complete the connectivity check
    type String
    enum: http, icmp
    interval number
    how often to trigger the probe
    threshold number
    number of consecutive misses before declaring the tunnel down
    timeout number
    time within which to complete the connectivity check
    type string
    enum: http, icmp
    interval int
    how often to trigger the probe
    threshold int
    number of consecutive misses before declaring the tunnel down
    timeout int
    time within which to complete the connectivity check
    type str
    enum: http, icmp
    interval Number
    how often to trigger the probe
    threshold Number
    number of consecutive misses before declaring the tunnel down
    timeout Number
    time within which to complete the connectivity check
    type String
    enum: http, icmp

    GatewayTunnelConfigsSecondary, GatewayTunnelConfigsSecondaryArgs

    Hosts List<string>
    InternalIps List<string>
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    ProbeIps List<string>
    RemoteIds List<string>
    Only if provider== custom-ipsec
    WanNames List<string>
    Hosts []string
    InternalIps []string
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    ProbeIps []string
    RemoteIds []string
    Only if provider== custom-ipsec
    WanNames []string
    hosts List<String>
    internalIps List<String>
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probeIps List<String>
    remoteIds List<String>
    Only if provider== custom-ipsec
    wanNames List<String>
    hosts string[]
    internalIps string[]
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probeIps string[]
    remoteIds string[]
    Only if provider== custom-ipsec
    wanNames string[]
    hosts Sequence[str]
    internal_ips Sequence[str]
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probe_ips Sequence[str]
    remote_ids Sequence[str]
    Only if provider== custom-ipsec
    wan_names Sequence[str]
    hosts List<String>
    internalIps List<String>
    Only if:

    • provider== zscaler-gre
    • provider== custom-gre
    probeIps List<String>
    remoteIds List<String>
    Only if provider== custom-ipsec
    wanNames List<String>

    GatewayTunnelProviderOptions, GatewayTunnelProviderOptionsArgs

    Jse Pulumi.JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsJse
    for jse-ipsec, this allow provisioning of adequate resource on JSE. Make sure adequate licenses are added
    Zscaler Pulumi.JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsZscaler
    for zscaler-ipsec and zscaler-gre
    Jse GatewayTunnelProviderOptionsJse
    for jse-ipsec, this allow provisioning of adequate resource on JSE. Make sure adequate licenses are added
    Zscaler GatewayTunnelProviderOptionsZscaler
    for zscaler-ipsec and zscaler-gre
    jse GatewayTunnelProviderOptionsJse
    for jse-ipsec, this allow provisioning of adequate resource on JSE. Make sure adequate licenses are added
    zscaler GatewayTunnelProviderOptionsZscaler
    for zscaler-ipsec and zscaler-gre
    jse GatewayTunnelProviderOptionsJse
    for jse-ipsec, this allow provisioning of adequate resource on JSE. Make sure adequate licenses are added
    zscaler GatewayTunnelProviderOptionsZscaler
    for zscaler-ipsec and zscaler-gre
    jse GatewayTunnelProviderOptionsJse
    for jse-ipsec, this allow provisioning of adequate resource on JSE. Make sure adequate licenses are added
    zscaler GatewayTunnelProviderOptionsZscaler
    for zscaler-ipsec and zscaler-gre
    jse Property Map
    for jse-ipsec, this allow provisioning of adequate resource on JSE. Make sure adequate licenses are added
    zscaler Property Map
    for zscaler-ipsec and zscaler-gre

    GatewayTunnelProviderOptionsJse, GatewayTunnelProviderOptionsJseArgs

    Name string
    NumUsers int
    Name string
    NumUsers int
    name String
    numUsers Integer
    name string
    numUsers number
    name String
    numUsers Number

    GatewayTunnelProviderOptionsZscaler, GatewayTunnelProviderOptionsZscalerArgs

    AupAcceptanceRequired bool
    AupExpire int
    days before AUP is requested again
    AupSslProxy bool
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    DownloadMbps int
    the download bandwidth cap of the link, in Mbps
    EnableAup bool
    if use_xff==true, display Acceptable Use Policy (AUP)
    EnableCaution bool
    when enforce_authentication==false, display caution notification for non-authenticated users
    EnforceAuthentication bool
    Name string
    SubLocations List<Pulumi.JuniperMist.Device.Inputs.GatewayTunnelProviderOptionsZscalerSubLocation>
    if use_xff==true
    UploadMbps int
    the download bandwidth cap of the link, in Mbps
    UseXff bool
    location uses proxy chaining to forward traffic
    AupAcceptanceRequired bool
    AupExpire int
    days before AUP is requested again
    AupSslProxy bool
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    DownloadMbps int
    the download bandwidth cap of the link, in Mbps
    EnableAup bool
    if use_xff==true, display Acceptable Use Policy (AUP)
    EnableCaution bool
    when enforce_authentication==false, display caution notification for non-authenticated users
    EnforceAuthentication bool
    Name string
    SubLocations []GatewayTunnelProviderOptionsZscalerSubLocation
    if use_xff==true
    UploadMbps int
    the download bandwidth cap of the link, in Mbps
    UseXff bool
    location uses proxy chaining to forward traffic
    aupAcceptanceRequired Boolean
    aupExpire Integer
    days before AUP is requested again
    aupSslProxy Boolean
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    downloadMbps Integer
    the download bandwidth cap of the link, in Mbps
    enableAup Boolean
    if use_xff==true, display Acceptable Use Policy (AUP)
    enableCaution Boolean
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforceAuthentication Boolean
    name String
    subLocations List<GatewayTunnelProviderOptionsZscalerSubLocation>
    if use_xff==true
    uploadMbps Integer
    the download bandwidth cap of the link, in Mbps
    useXff Boolean
    location uses proxy chaining to forward traffic
    aupAcceptanceRequired boolean
    aupExpire number
    days before AUP is requested again
    aupSslProxy boolean
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    downloadMbps number
    the download bandwidth cap of the link, in Mbps
    enableAup boolean
    if use_xff==true, display Acceptable Use Policy (AUP)
    enableCaution boolean
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforceAuthentication boolean
    name string
    subLocations GatewayTunnelProviderOptionsZscalerSubLocation[]
    if use_xff==true
    uploadMbps number
    the download bandwidth cap of the link, in Mbps
    useXff boolean
    location uses proxy chaining to forward traffic
    aup_acceptance_required bool
    aup_expire int
    days before AUP is requested again
    aup_ssl_proxy bool
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    download_mbps int
    the download bandwidth cap of the link, in Mbps
    enable_aup bool
    if use_xff==true, display Acceptable Use Policy (AUP)
    enable_caution bool
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforce_authentication bool
    name str
    sub_locations Sequence[GatewayTunnelProviderOptionsZscalerSubLocation]
    if use_xff==true
    upload_mbps int
    the download bandwidth cap of the link, in Mbps
    use_xff bool
    location uses proxy chaining to forward traffic
    aupAcceptanceRequired Boolean
    aupExpire Number
    days before AUP is requested again
    aupSslProxy Boolean
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    downloadMbps Number
    the download bandwidth cap of the link, in Mbps
    enableAup Boolean
    if use_xff==true, display Acceptable Use Policy (AUP)
    enableCaution Boolean
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforceAuthentication Boolean
    name String
    subLocations List<Property Map>
    if use_xff==true
    uploadMbps Number
    the download bandwidth cap of the link, in Mbps
    useXff Boolean
    location uses proxy chaining to forward traffic

    GatewayTunnelProviderOptionsZscalerSubLocation, GatewayTunnelProviderOptionsZscalerSubLocationArgs

    AupAcceptanceRequired bool
    AupExpire int
    days before AUP is requested again
    AupSslProxy bool
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    DownloadMbps int
    the download bandwidth cap of the link, in Mbps
    EnableAup bool
    if use_xff==true, display Acceptable Use Policy (AUP)
    EnableCaution bool
    when enforce_authentication==false, display caution notification for non-authenticated users
    EnforceAuthentication bool
    Subnets List<string>
    UploadMbps int
    the download bandwidth cap of the link, in Mbps
    AupAcceptanceRequired bool
    AupExpire int
    days before AUP is requested again
    AupSslProxy bool
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    DownloadMbps int
    the download bandwidth cap of the link, in Mbps
    EnableAup bool
    if use_xff==true, display Acceptable Use Policy (AUP)
    EnableCaution bool
    when enforce_authentication==false, display caution notification for non-authenticated users
    EnforceAuthentication bool
    Subnets []string
    UploadMbps int
    the download bandwidth cap of the link, in Mbps
    aupAcceptanceRequired Boolean
    aupExpire Integer
    days before AUP is requested again
    aupSslProxy Boolean
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    downloadMbps Integer
    the download bandwidth cap of the link, in Mbps
    enableAup Boolean
    if use_xff==true, display Acceptable Use Policy (AUP)
    enableCaution Boolean
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforceAuthentication Boolean
    subnets List<String>
    uploadMbps Integer
    the download bandwidth cap of the link, in Mbps
    aupAcceptanceRequired boolean
    aupExpire number
    days before AUP is requested again
    aupSslProxy boolean
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    downloadMbps number
    the download bandwidth cap of the link, in Mbps
    enableAup boolean
    if use_xff==true, display Acceptable Use Policy (AUP)
    enableCaution boolean
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforceAuthentication boolean
    subnets string[]
    uploadMbps number
    the download bandwidth cap of the link, in Mbps
    aup_acceptance_required bool
    aup_expire int
    days before AUP is requested again
    aup_ssl_proxy bool
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    download_mbps int
    the download bandwidth cap of the link, in Mbps
    enable_aup bool
    if use_xff==true, display Acceptable Use Policy (AUP)
    enable_caution bool
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforce_authentication bool
    subnets Sequence[str]
    upload_mbps int
    the download bandwidth cap of the link, in Mbps
    aupAcceptanceRequired Boolean
    aupExpire Number
    days before AUP is requested again
    aupSslProxy Boolean
    proxy HTTPs traffic, requiring Zscaler cert to be installed in browser
    downloadMbps Number
    the download bandwidth cap of the link, in Mbps
    enableAup Boolean
    if use_xff==true, display Acceptable Use Policy (AUP)
    enableCaution Boolean
    when enforce_authentication==false, display caution notification for non-authenticated users
    enforceAuthentication Boolean
    subnets List<String>
    uploadMbps Number
    the download bandwidth cap of the link, in Mbps

    GatewayVrfConfig, GatewayVrfConfigArgs

    Enabled bool
    whether to enable VRF (when supported on the device)
    Enabled bool
    whether to enable VRF (when supported on the device)
    enabled Boolean
    whether to enable VRF (when supported on the device)
    enabled boolean
    whether to enable VRF (when supported on the device)
    enabled bool
    whether to enable VRF (when supported on the device)
    enabled Boolean
    whether to enable VRF (when supported on the device)

    GatewayVrfInstances, GatewayVrfInstancesArgs

    Networks List<string>
    Networks []string
    networks List<String>
    networks string[]
    networks Sequence[str]
    networks List<String>

    Import

    Using pulumi import, import mist_device_gateway with:

    Gateway Configuration can be imported by specifying the site_id and the device_id

    $ pulumi import junipermist:device/gateway:Gateway gateway_one 17b46405-3a6d-4715-8bb4-6bb6d06f316a.d3c42998-9012-4859-9743-6b9bee475309
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    junipermist pulumi/pulumi-junipermist
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the mist Terraform Provider.
    junipermist logo
    Juniper Mist v0.0.27 published on Friday, Sep 27, 2024 by Pulumi