Event Subscription Args
Event Subscription API Version: 2020-06-01.
Example Usage
EventSubscriptions_CreateOrUpdateForCustomTopic_EventHubDestination
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
DeadLetterDestination = new AzureNative.EventGrid.Inputs.StorageBlobDeadLetterDestinationArgs
{
BlobContainerName = "contosocontainer",
EndpointType = "StorageBlob",
ResourceId = "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg",
},
Destination = new AzureNative.EventGrid.Inputs.EventHubEventSubscriptionDestinationArgs
{
EndpointType = "EventHub",
ResourceId = "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.EventHub/namespaces/ContosoNamespace/eventhubs/EH1",
},
EventSubscriptionName = "examplesubscription1",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
SubjectBeginsWith = "ExamplePrefix",
SubjectEndsWith = "ExampleSuffix",
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.deadLetterDestination(Map.ofEntries(
Map.entry("blobContainerName", "contosocontainer"),
Map.entry("endpointType", "StorageBlob"),
Map.entry("resourceId", "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg")
))
.destination(Map.ofEntries(
Map.entry("endpointType", "EventHub"),
Map.entry("resourceId", "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.EventHub/namespaces/ContosoNamespace/eventhubs/EH1")
))
.eventSubscriptionName("examplesubscription1")
.filter(Map.ofEntries(
Map.entry("isSubjectCaseSensitive", false),
Map.entry("subjectBeginsWith", "ExamplePrefix"),
Map.entry("subjectEndsWith", "ExampleSuffix")
))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1")
.build());
}
}
EventSubscriptions_CreateOrUpdateForCustomTopic_HybridConnectionDestination
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
DeadLetterDestination = new AzureNative.EventGrid.Inputs.StorageBlobDeadLetterDestinationArgs
{
BlobContainerName = "contosocontainer",
EndpointType = "StorageBlob",
ResourceId = "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg",
},
Destination = new AzureNative.EventGrid.Inputs.HybridConnectionEventSubscriptionDestinationArgs
{
EndpointType = "HybridConnection",
ResourceId = "/subscriptions/d33c5f7a-02ea-40f4-bf52-07f17e84d6a8/resourceGroups/TestRG/providers/Microsoft.Relay/namespaces/ContosoNamespace/hybridConnections/HC1",
},
EventSubscriptionName = "examplesubscription1",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
SubjectBeginsWith = "ExamplePrefix",
SubjectEndsWith = "ExampleSuffix",
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.deadLetterDestination(Map.ofEntries(
Map.entry("blobContainerName", "contosocontainer"),
Map.entry("endpointType", "StorageBlob"),
Map.entry("resourceId", "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg")
))
.destination(Map.ofEntries(
Map.entry("endpointType", "HybridConnection"),
Map.entry("resourceId", "/subscriptions/d33c5f7a-02ea-40f4-bf52-07f17e84d6a8/resourceGroups/TestRG/providers/Microsoft.Relay/namespaces/ContosoNamespace/hybridConnections/HC1")
))
.eventSubscriptionName("examplesubscription1")
.filter(Map.ofEntries(
Map.entry("isSubjectCaseSensitive", false),
Map.entry("subjectBeginsWith", "ExamplePrefix"),
Map.entry("subjectEndsWith", "ExampleSuffix")
))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1")
.build());
}
}
EventSubscriptions_CreateOrUpdateForCustomTopic_StorageQueueDestination
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
DeadLetterDestination = new AzureNative.EventGrid.Inputs.StorageBlobDeadLetterDestinationArgs
{
BlobContainerName = "contosocontainer",
EndpointType = "StorageBlob",
ResourceId = "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg",
},
Destination = new AzureNative.EventGrid.Inputs.StorageQueueEventSubscriptionDestinationArgs
{
EndpointType = "StorageQueue",
QueueName = "queue1",
ResourceId = "/subscriptions/d33c5f7a-02ea-40f4-bf52-07f17e84d6a8/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg",
},
EventSubscriptionName = "examplesubscription1",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
SubjectBeginsWith = "ExamplePrefix",
SubjectEndsWith = "ExampleSuffix",
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.deadLetterDestination(Map.ofEntries(
Map.entry("blobContainerName", "contosocontainer"),
Map.entry("endpointType", "StorageBlob"),
Map.entry("resourceId", "/subscriptions/55f3dcd4-cac7-43b4-990b-a139d62a1eb2/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg")
))
.destination(Map.ofEntries(
Map.entry("endpointType", "StorageQueue"),
Map.entry("queueName", "queue1"),
Map.entry("resourceId", "/subscriptions/d33c5f7a-02ea-40f4-bf52-07f17e84d6a8/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/contosostg")
))
.eventSubscriptionName("examplesubscription1")
.filter(Map.ofEntries(
Map.entry("isSubjectCaseSensitive", false),
Map.entry("subjectBeginsWith", "ExamplePrefix"),
Map.entry("subjectEndsWith", "ExampleSuffix")
))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1")
.build());
}
}
EventSubscriptions_CreateOrUpdateForCustomTopic_WebhookDestination
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
Destination = new AzureNative.EventGrid.Inputs.WebHookEventSubscriptionDestinationArgs
{
EndpointType = "WebHook",
EndpointUrl = "https://azurefunctionexample.azurewebsites.net/runtime/webhooks/EventGrid?functionName=EventGridTrigger1&code=PASSWORDCODE",
},
EventSubscriptionName = "examplesubscription1",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
SubjectBeginsWith = "ExamplePrefix",
SubjectEndsWith = "ExampleSuffix",
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1",
});
});
package main
import (
eventgrid "github.com/pulumi/pulumi-azure-native-sdk/eventgrid"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := eventgrid.NewEventSubscription(ctx, "eventSubscription", &eventgrid.EventSubscriptionArgs{
Destination: eventgrid.WebHookEventSubscriptionDestination{
EndpointType: "WebHook",
EndpointUrl: "https://azurefunctionexample.azurewebsites.net/runtime/webhooks/EventGrid?functionName=EventGridTrigger1&code=PASSWORDCODE",
},
EventSubscriptionName: pulumi.String("examplesubscription1"),
Filter: &eventgrid.EventSubscriptionFilterArgs{
IsSubjectCaseSensitive: pulumi.Bool(false),
SubjectBeginsWith: pulumi.String("ExamplePrefix"),
SubjectEndsWith: pulumi.String("ExampleSuffix"),
},
Scope: pulumi.String("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.destination(Map.ofEntries(
Map.entry("endpointType", "WebHook"),
Map.entry("endpointUrl", "https://azurefunctionexample.azurewebsites.net/runtime/webhooks/EventGrid?functionName=EventGridTrigger1&code=PASSWORDCODE")
))
.eventSubscriptionName("examplesubscription1")
.filter(Map.ofEntries(
Map.entry("isSubjectCaseSensitive", false),
Map.entry("subjectBeginsWith", "ExamplePrefix"),
Map.entry("subjectEndsWith", "ExampleSuffix")
))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventGrid/topics/exampletopic1")
.build());
}
}
EventSubscriptions_CreateOrUpdateForResource
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
Destination = new AzureNative.EventGrid.Inputs.WebHookEventSubscriptionDestinationArgs
{
EndpointType = "WebHook",
EndpointUrl = "https://requestb.in/15ksip71",
},
EventSubscriptionName = "examplesubscription10",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
SubjectBeginsWith = "ExamplePrefix",
SubjectEndsWith = "ExampleSuffix",
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventHub/namespaces/examplenamespace1",
});
});
package main
import (
eventgrid "github.com/pulumi/pulumi-azure-native-sdk/eventgrid"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := eventgrid.NewEventSubscription(ctx, "eventSubscription", &eventgrid.EventSubscriptionArgs{
Destination: eventgrid.WebHookEventSubscriptionDestination{
EndpointType: "WebHook",
EndpointUrl: "https://requestb.in/15ksip71",
},
EventSubscriptionName: pulumi.String("examplesubscription10"),
Filter: &eventgrid.EventSubscriptionFilterArgs{
IsSubjectCaseSensitive: pulumi.Bool(false),
SubjectBeginsWith: pulumi.String("ExamplePrefix"),
SubjectEndsWith: pulumi.String("ExampleSuffix"),
},
Scope: pulumi.String("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventHub/namespaces/examplenamespace1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.destination(Map.ofEntries(
Map.entry("endpointType", "WebHook"),
Map.entry("endpointUrl", "https://requestb.in/15ksip71")
))
.eventSubscriptionName("examplesubscription10")
.filter(Map.ofEntries(
Map.entry("isSubjectCaseSensitive", false),
Map.entry("subjectBeginsWith", "ExamplePrefix"),
Map.entry("subjectEndsWith", "ExampleSuffix")
))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg/providers/Microsoft.EventHub/namespaces/examplenamespace1")
.build());
}
}
EventSubscriptions_CreateOrUpdateForResourceGroup
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
Destination = new AzureNative.EventGrid.Inputs.WebHookEventSubscriptionDestinationArgs
{
EndpointType = "WebHook",
EndpointUrl = "https://requestb.in/15ksip71",
},
EventSubscriptionName = "examplesubscription2",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
SubjectBeginsWith = "ExamplePrefix",
SubjectEndsWith = "ExampleSuffix",
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg",
});
});
package main
import (
eventgrid "github.com/pulumi/pulumi-azure-native-sdk/eventgrid"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := eventgrid.NewEventSubscription(ctx, "eventSubscription", &eventgrid.EventSubscriptionArgs{
Destination: eventgrid.WebHookEventSubscriptionDestination{
EndpointType: "WebHook",
EndpointUrl: "https://requestb.in/15ksip71",
},
EventSubscriptionName: pulumi.String("examplesubscription2"),
Filter: &eventgrid.EventSubscriptionFilterArgs{
IsSubjectCaseSensitive: pulumi.Bool(false),
SubjectBeginsWith: pulumi.String("ExamplePrefix"),
SubjectEndsWith: pulumi.String("ExampleSuffix"),
},
Scope: pulumi.String("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.destination(Map.ofEntries(
Map.entry("endpointType", "WebHook"),
Map.entry("endpointUrl", "https://requestb.in/15ksip71")
))
.eventSubscriptionName("examplesubscription2")
.filter(Map.ofEntries(
Map.entry("isSubjectCaseSensitive", false),
Map.entry("subjectBeginsWith", "ExamplePrefix"),
Map.entry("subjectEndsWith", "ExampleSuffix")
))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/resourceGroups/examplerg")
.build());
}
}
EventSubscriptions_CreateOrUpdateForSubscription
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var eventSubscription = new AzureNative.EventGrid.EventSubscription("eventSubscription", new()
{
Destination = new AzureNative.EventGrid.Inputs.WebHookEventSubscriptionDestinationArgs
{
EndpointType = "WebHook",
EndpointUrl = "https://requestb.in/15ksip71",
},
EventSubscriptionName = "examplesubscription3",
Filter = new AzureNative.EventGrid.Inputs.EventSubscriptionFilterArgs
{
IsSubjectCaseSensitive = false,
},
Scope = "subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4",
});
});
package main
import (
eventgrid "github.com/pulumi/pulumi-azure-native-sdk/eventgrid"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := eventgrid.NewEventSubscription(ctx, "eventSubscription", &eventgrid.EventSubscriptionArgs{
Destination: eventgrid.WebHookEventSubscriptionDestination{
EndpointType: "WebHook",
EndpointUrl: "https://requestb.in/15ksip71",
},
EventSubscriptionName: pulumi.String("examplesubscription3"),
Filter: &eventgrid.EventSubscriptionFilterArgs{
IsSubjectCaseSensitive: pulumi.Bool(false),
},
Scope: pulumi.String("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.eventgrid.EventSubscription;
import com.pulumi.azurenative.eventgrid.EventSubscriptionArgs;
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 eventSubscription = new EventSubscription("eventSubscription", EventSubscriptionArgs.builder()
.destination(Map.ofEntries(
Map.entry("endpointType", "WebHook"),
Map.entry("endpointUrl", "https://requestb.in/15ksip71")
))
.eventSubscriptionName("examplesubscription3")
.filter(Map.of("isSubjectCaseSensitive", false))
.scope("subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4")
.build());
}
}
Import
An existing resource can be imported using its type token, name, and identifier, e.g.
$ pulumi import azure-native:eventgrid:EventSubscription examplesubscription3 /subscriptions/5b4b650e-28b9-4790-b3ab-ddbd88d727c4/providers/Microsoft.EventGrid/eventSubscriptions/examplesubscription3
Constructors
Properties
The DeadLetter destination of the event subscription.
Information about the destination where events have to be delivered for the event subscription.
The event delivery schema for the event subscription.
Name of the event subscription. Event subscription names must be between 3 and 64 characters in length and should use alphanumeric letters only.
Expiration time of the event subscription.
Information about the filter for the event subscription.
The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.
The identifier of the resource to which the event subscription needs to be created or updated. The scope can be a subscription, or a resource group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. For example, use '/subscriptions/{subscriptionId}/' for a subscription, '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' for a resource, and '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' for an EventGrid topic.