Event Subscription
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",
});
});
Content copied to clipboard
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());
}
}
Content copied to clipboard
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",
});
});
Content copied to clipboard
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());
}
}
Content copied to clipboard
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",
});
});
Content copied to clipboard
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());
}
}
Content copied to clipboard
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",
});
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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());
}
}
Content copied to clipboard
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",
});
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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());
}
}
Content copied to clipboard
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",
});
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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());
}
}
Content copied to clipboard
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",
});
});
Content copied to clipboard
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
})
}
Content copied to clipboard
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());
}
}
Content copied to clipboard
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
Content copied to clipboard
Properties
Link copied to clipboard
The DeadLetter destination of the event subscription.
Link copied to clipboard
Information about the destination where events have to be delivered for the event subscription.
Link copied to clipboard
The event delivery schema for the event subscription.
Link copied to clipboard
Expiration time of the event subscription.
Link copied to clipboard
Information about the filter for the event subscription.
Link copied to clipboard
Provisioning state of the event subscription.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
The retry policy for events. This can be used to configure maximum number of delivery attempts and time to live for events.
Link copied to clipboard
The system metadata relating to Event Subscription resource.