1. Packages
  2. Azure Classic
  3. API Docs
  4. network
  5. getVirtualWan

We recommend using Azure Native.

Azure v6.31.0 published on Monday, Dec 29, 2025 by Pulumi
azure logo

We recommend using Azure Native.

Azure v6.31.0 published on Monday, Dec 29, 2025 by Pulumi

    Use this data source to access information about an existing Virtual Wan.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = azure.network.getVirtualWan({
        name: "existing",
        resourceGroupName: "existing",
    });
    export const id = example.then(example => example.id);
    export const allowBranchToBranchTraffic = example.then(example => example.allowBranchToBranchTraffic);
    export const disableVpnEncryption = example.then(example => example.disableVpnEncryption);
    export const location = example.then(example => example.location);
    export const office365LocalBreakoutCategory = example.then(example => example.office365LocalBreakoutCategory);
    export const sku = example.then(example => example.sku);
    export const tags = example.then(example => example.tags);
    export const virtualHubs = example.then(example => example.virtualHubs);
    export const vpnSites = example.then(example => example.vpnSites);
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.network.get_virtual_wan(name="existing",
        resource_group_name="existing")
    pulumi.export("id", example.id)
    pulumi.export("allowBranchToBranchTraffic", example.allow_branch_to_branch_traffic)
    pulumi.export("disableVpnEncryption", example.disable_vpn_encryption)
    pulumi.export("location", example.location)
    pulumi.export("office365LocalBreakoutCategory", example.office365_local_breakout_category)
    pulumi.export("sku", example.sku)
    pulumi.export("tags", example.tags)
    pulumi.export("virtualHubs", example.virtual_hubs)
    pulumi.export("vpnSites", example.vpn_sites)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/network"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := network.LookupVirtualWan(ctx, &network.LookupVirtualWanArgs{
    			Name:              "existing",
    			ResourceGroupName: "existing",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("id", example.Id)
    		ctx.Export("allowBranchToBranchTraffic", example.AllowBranchToBranchTraffic)
    		ctx.Export("disableVpnEncryption", example.DisableVpnEncryption)
    		ctx.Export("location", example.Location)
    		ctx.Export("office365LocalBreakoutCategory", example.Office365LocalBreakoutCategory)
    		ctx.Export("sku", example.Sku)
    		ctx.Export("tags", example.Tags)
    		ctx.Export("virtualHubs", example.VirtualHubs)
    		ctx.Export("vpnSites", example.VpnSites)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Azure.Network.GetVirtualWan.Invoke(new()
        {
            Name = "existing",
            ResourceGroupName = "existing",
        });
    
        return new Dictionary<string, object?>
        {
            ["id"] = example.Apply(getVirtualWanResult => getVirtualWanResult.Id),
            ["allowBranchToBranchTraffic"] = example.Apply(getVirtualWanResult => getVirtualWanResult.AllowBranchToBranchTraffic),
            ["disableVpnEncryption"] = example.Apply(getVirtualWanResult => getVirtualWanResult.DisableVpnEncryption),
            ["location"] = example.Apply(getVirtualWanResult => getVirtualWanResult.Location),
            ["office365LocalBreakoutCategory"] = example.Apply(getVirtualWanResult => getVirtualWanResult.Office365LocalBreakoutCategory),
            ["sku"] = example.Apply(getVirtualWanResult => getVirtualWanResult.Sku),
            ["tags"] = example.Apply(getVirtualWanResult => getVirtualWanResult.Tags),
            ["virtualHubs"] = example.Apply(getVirtualWanResult => getVirtualWanResult.VirtualHubs),
            ["vpnSites"] = example.Apply(getVirtualWanResult => getVirtualWanResult.VpnSites),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.network.NetworkFunctions;
    import com.pulumi.azure.network.inputs.GetVirtualWanArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            final var example = NetworkFunctions.getVirtualWan(GetVirtualWanArgs.builder()
                .name("existing")
                .resourceGroupName("existing")
                .build());
    
            ctx.export("id", example.id());
            ctx.export("allowBranchToBranchTraffic", example.allowBranchToBranchTraffic());
            ctx.export("disableVpnEncryption", example.disableVpnEncryption());
            ctx.export("location", example.location());
            ctx.export("office365LocalBreakoutCategory", example.office365LocalBreakoutCategory());
            ctx.export("sku", example.sku());
            ctx.export("tags", example.tags());
            ctx.export("virtualHubs", example.virtualHubs());
            ctx.export("vpnSites", example.vpnSites());
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: azure:network:getVirtualWan
          arguments:
            name: existing
            resourceGroupName: existing
    outputs:
      id: ${example.id}
      allowBranchToBranchTraffic: ${example.allowBranchToBranchTraffic}
      disableVpnEncryption: ${example.disableVpnEncryption}
      location: ${example.location}
      office365LocalBreakoutCategory: ${example.office365LocalBreakoutCategory}
      sku: ${example.sku}
      tags: ${example.tags}
      virtualHubs: ${example.virtualHubs}
      vpnSites: ${example.vpnSites}
    

    API Providers

    This data source uses the following Azure API Providers:

    • Microsoft.Network - 2025-01-01

    Using getVirtualWan

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

    function getVirtualWan(args: GetVirtualWanArgs, opts?: InvokeOptions): Promise<GetVirtualWanResult>
    function getVirtualWanOutput(args: GetVirtualWanOutputArgs, opts?: InvokeOptions): Output<GetVirtualWanResult>
    def get_virtual_wan(name: Optional[str] = None,
                        resource_group_name: Optional[str] = None,
                        opts: Optional[InvokeOptions] = None) -> GetVirtualWanResult
    def get_virtual_wan_output(name: Optional[pulumi.Input[str]] = None,
                        resource_group_name: Optional[pulumi.Input[str]] = None,
                        opts: Optional[InvokeOptions] = None) -> Output[GetVirtualWanResult]
    func LookupVirtualWan(ctx *Context, args *LookupVirtualWanArgs, opts ...InvokeOption) (*LookupVirtualWanResult, error)
    func LookupVirtualWanOutput(ctx *Context, args *LookupVirtualWanOutputArgs, opts ...InvokeOption) LookupVirtualWanResultOutput

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

    public static class GetVirtualWan 
    {
        public static Task<GetVirtualWanResult> InvokeAsync(GetVirtualWanArgs args, InvokeOptions? opts = null)
        public static Output<GetVirtualWanResult> Invoke(GetVirtualWanInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetVirtualWanResult> getVirtualWan(GetVirtualWanArgs args, InvokeOptions options)
    public static Output<GetVirtualWanResult> getVirtualWan(GetVirtualWanArgs args, InvokeOptions options)
    
    fn::invoke:
      function: azure:network/getVirtualWan:getVirtualWan
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string
    The name of this Virtual Wan.
    ResourceGroupName string
    The name of the Resource Group where the Virtual Wan exists.
    Name string
    The name of this Virtual Wan.
    ResourceGroupName string
    The name of the Resource Group where the Virtual Wan exists.
    name String
    The name of this Virtual Wan.
    resourceGroupName String
    The name of the Resource Group where the Virtual Wan exists.
    name string
    The name of this Virtual Wan.
    resourceGroupName string
    The name of the Resource Group where the Virtual Wan exists.
    name str
    The name of this Virtual Wan.
    resource_group_name str
    The name of the Resource Group where the Virtual Wan exists.
    name String
    The name of this Virtual Wan.
    resourceGroupName String
    The name of the Resource Group where the Virtual Wan exists.

    getVirtualWan Result

    The following output properties are available:

    AllowBranchToBranchTraffic bool
    Is branch to branch traffic is allowed?
    DisableVpnEncryption bool
    Is VPN Encryption disabled?
    Id string
    The provider-assigned unique ID for this managed resource.
    Location string
    The Azure Region where the Virtual Wan exists.
    Name string
    Office365LocalBreakoutCategory string
    The Office365 Local Breakout Category.
    ResourceGroupName string
    Sku string
    Type of Virtual Wan (Basic or Standard).
    Tags Dictionary<string, string>
    A mapping of tags assigned to the Virtual Wan.
    VirtualHubIds List<string>
    A list of Virtual Hubs IDs attached to this Virtual WAN.
    VpnSiteIds List<string>
    A list of VPN Site IDs attached to this Virtual WAN.
    AllowBranchToBranchTraffic bool
    Is branch to branch traffic is allowed?
    DisableVpnEncryption bool
    Is VPN Encryption disabled?
    Id string
    The provider-assigned unique ID for this managed resource.
    Location string
    The Azure Region where the Virtual Wan exists.
    Name string
    Office365LocalBreakoutCategory string
    The Office365 Local Breakout Category.
    ResourceGroupName string
    Sku string
    Type of Virtual Wan (Basic or Standard).
    Tags map[string]string
    A mapping of tags assigned to the Virtual Wan.
    VirtualHubIds []string
    A list of Virtual Hubs IDs attached to this Virtual WAN.
    VpnSiteIds []string
    A list of VPN Site IDs attached to this Virtual WAN.
    allowBranchToBranchTraffic Boolean
    Is branch to branch traffic is allowed?
    disableVpnEncryption Boolean
    Is VPN Encryption disabled?
    id String
    The provider-assigned unique ID for this managed resource.
    location String
    The Azure Region where the Virtual Wan exists.
    name String
    office365LocalBreakoutCategory String
    The Office365 Local Breakout Category.
    resourceGroupName String
    sku String
    Type of Virtual Wan (Basic or Standard).
    tags Map<String,String>
    A mapping of tags assigned to the Virtual Wan.
    virtualHubIds List<String>
    A list of Virtual Hubs IDs attached to this Virtual WAN.
    vpnSiteIds List<String>
    A list of VPN Site IDs attached to this Virtual WAN.
    allowBranchToBranchTraffic boolean
    Is branch to branch traffic is allowed?
    disableVpnEncryption boolean
    Is VPN Encryption disabled?
    id string
    The provider-assigned unique ID for this managed resource.
    location string
    The Azure Region where the Virtual Wan exists.
    name string
    office365LocalBreakoutCategory string
    The Office365 Local Breakout Category.
    resourceGroupName string
    sku string
    Type of Virtual Wan (Basic or Standard).
    tags {[key: string]: string}
    A mapping of tags assigned to the Virtual Wan.
    virtualHubIds string[]
    A list of Virtual Hubs IDs attached to this Virtual WAN.
    vpnSiteIds string[]
    A list of VPN Site IDs attached to this Virtual WAN.
    allow_branch_to_branch_traffic bool
    Is branch to branch traffic is allowed?
    disable_vpn_encryption bool
    Is VPN Encryption disabled?
    id str
    The provider-assigned unique ID for this managed resource.
    location str
    The Azure Region where the Virtual Wan exists.
    name str
    office365_local_breakout_category str
    The Office365 Local Breakout Category.
    resource_group_name str
    sku str
    Type of Virtual Wan (Basic or Standard).
    tags Mapping[str, str]
    A mapping of tags assigned to the Virtual Wan.
    virtual_hub_ids Sequence[str]
    A list of Virtual Hubs IDs attached to this Virtual WAN.
    vpn_site_ids Sequence[str]
    A list of VPN Site IDs attached to this Virtual WAN.
    allowBranchToBranchTraffic Boolean
    Is branch to branch traffic is allowed?
    disableVpnEncryption Boolean
    Is VPN Encryption disabled?
    id String
    The provider-assigned unique ID for this managed resource.
    location String
    The Azure Region where the Virtual Wan exists.
    name String
    office365LocalBreakoutCategory String
    The Office365 Local Breakout Category.
    resourceGroupName String
    sku String
    Type of Virtual Wan (Basic or Standard).
    tags Map<String>
    A mapping of tags assigned to the Virtual Wan.
    virtualHubIds List<String>
    A list of Virtual Hubs IDs attached to this Virtual WAN.
    vpnSiteIds List<String>
    A list of VPN Site IDs attached to this Virtual WAN.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Azure v6.31.0 published on Monday, Dec 29, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate