Web Pub Sub Hub
    A hub setting Azure REST API version: 2023-02-01. Prior API version in Azure Native 1.x: 2021-10-01. Other available API versions: 2023-03-01-preview, 2023-06-01-preview, 2023-08-01-preview.
Example Usage
WebPubSubHubs_CreateOrUpdate
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
    var webPubSubHub = new AzureNative.WebPubSub.WebPubSubHub("webPubSubHub", new()
    {
        HubName = "exampleHub",
        Properties = new AzureNative.WebPubSub.Inputs.WebPubSubHubPropertiesArgs
        {
            AnonymousConnectPolicy = "allow",
            EventHandlers = new[]
            {
                new AzureNative.WebPubSub.Inputs.EventHandlerArgs
                {
                    Auth = new AzureNative.WebPubSub.Inputs.UpstreamAuthSettingsArgs
                    {
                        ManagedIdentity = new AzureNative.WebPubSub.Inputs.ManagedIdentitySettingsArgs
                        {
                            Resource = "abc",
                        },
                        Type = "ManagedIdentity",
                    },
                    SystemEvents = new[]
                    {
                        "connect",
                        "connected",
                    },
                    UrlTemplate = "http://host.com",
                    UserEventPattern = "*",
                },
            },
            EventListeners = new[]
            {
                new AzureNative.WebPubSub.Inputs.EventListenerArgs
                {
                    Endpoint =
                    {
                        { "eventHubName", "eventHubName1" },
                        { "fullyQualifiedNamespace", "example.servicebus.windows.net" },
                        { "type", "EventHub" },
                    },
                    Filter =
                    {
                        { "systemEvents", new[]
                        {
                            "connected",
                            "disconnected",
                        } },
                        { "type", "EventName" },
                        { "userEventPattern", "*" },
                    },
                },
            },
        },
        ResourceGroupName = "myResourceGroup",
        ResourceName = "myWebPubSubService",
    });
});Content copied to clipboard
package main
import (
	"github.com/pulumi/pulumi-azure-native-sdk/webpubsub/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := webpubsub.NewWebPubSubHub(ctx, "webPubSubHub", &webpubsub.WebPubSubHubArgs{
HubName: pulumi.String("exampleHub"),
Properties: webpubsub.WebPubSubHubPropertiesResponse{
AnonymousConnectPolicy: pulumi.String("allow"),
EventHandlers: webpubsub.EventHandlerArray{
interface{}{
Auth: interface{}{
ManagedIdentity: &webpubsub.ManagedIdentitySettingsArgs{
Resource: pulumi.String("abc"),
},
Type: pulumi.String("ManagedIdentity"),
},
SystemEvents: pulumi.StringArray{
pulumi.String("connect"),
pulumi.String("connected"),
},
UrlTemplate: pulumi.String("http://host.com"),
UserEventPattern: pulumi.String("*"),
},
},
EventListeners: []webpubsub.EventListenerArgs{
{
Endpoint: {
EventHubName: pulumi.String("eventHubName1"),
FullyQualifiedNamespace: pulumi.String("example.servicebus.windows.net"),
Type: pulumi.String("EventHub"),
},
Filter: {
SystemEvents: pulumi.StringArray{
pulumi.String("connected"),
pulumi.String("disconnected"),
},
Type: pulumi.String("EventName"),
UserEventPattern: pulumi.String("*"),
},
},
},
},
ResourceGroupName: pulumi.String("myResourceGroup"),
ResourceName: pulumi.String("myWebPubSubService"),
})
if err != nil {
return err
}
return nil
})
}Content copied to clipboard
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.webpubsub.WebPubSubHub;
import com.pulumi.azurenative.webpubsub.WebPubSubHubArgs;
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 webPubSubHub = new WebPubSubHub("webPubSubHub", WebPubSubHubArgs.builder()
            .hubName("exampleHub")
            .properties(Map.ofEntries(
                Map.entry("anonymousConnectPolicy", "allow"),
                Map.entry("eventHandlers", Map.ofEntries(
                    Map.entry("auth", Map.ofEntries(
                        Map.entry("managedIdentity", Map.of("resource", "abc")),
                        Map.entry("type", "ManagedIdentity")
                    )),
                    Map.entry("systemEvents",
                        "connect",
                        "connected"),
                    Map.entry("urlTemplate", "http://host.com"),
                    Map.entry("userEventPattern", "*")
                )),
                Map.entry("eventListeners", Map.ofEntries(
                    Map.entry("endpoint", Map.ofEntries(
                        Map.entry("eventHubName", "eventHubName1"),
                        Map.entry("fullyQualifiedNamespace", "example.servicebus.windows.net"),
                        Map.entry("type", "EventHub")
                    )),
                    Map.entry("filter", Map.ofEntries(
                        Map.entry("systemEvents",
                            "connected",
                            "disconnected"),
                        Map.entry("type", "EventName"),
                        Map.entry("userEventPattern", "*")
                    ))
                ))
            ))
            .resourceGroupName("myResourceGroup")
            .resourceName("myWebPubSubService")
            .build());
    }
}Content copied to clipboard
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:webpubsub:WebPubSubHub exampleHub /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SignalRService/webPubSub/{resourceName}/hubs/{hubName}Content copied to clipboard