1. Packages
  2. Azure Classic
  3. API Docs
  4. iot
  5. IoTHub

We recommend using Azure Native.

Azure Classic v5.72.0 published on Monday, Apr 15, 2024 by Pulumi

azure.iot.IoTHub

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.72.0 published on Monday, Apr 15, 2024 by Pulumi

    Manages an IotHub

    NOTE: Endpoints can be defined either directly on the azure.iot.IoTHub resource, or using the azurerm_iothub_endpoint_* resources - but the two ways of defining the endpoints cannot be used together. If both are used against the same IoTHub, spurious changes will occur. Also, defining a azurerm_iothub_endpoint_* resource and another endpoint of a different type directly on the azure.iot.IoTHub resource is not supported.

    NOTE: Routes can be defined either directly on the azure.iot.IoTHub resource, or using the azure.iot.Route resource - but the two cannot be used together. If both are used against the same IoTHub, spurious changes will occur.

    NOTE: Enrichments can be defined either directly on the azure.iot.IoTHub resource, or using the azure.iot.Enrichment resource - but the two cannot be used together. If both are used against the same IoTHub, spurious changes will occur.

    NOTE: Fallback route can be defined either directly on the azure.iot.IoTHub resource, or using the azure.iot.FallbackRoute resource - but the two cannot be used together. If both are used against the same IoTHub, spurious changes will occur.

    NOTE: File upload can be defined either directly on the azure.iot.IoTHub resource, or using the azure.iot.FileUpload resource - but the two cannot be used together. If both are used against the same IoTHub, spurious changes will occur.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = new azure.core.ResourceGroup("example", {
        name: "example-resources",
        location: "West Europe",
    });
    const exampleAccount = new azure.storage.Account("example", {
        name: "examplestorage",
        resourceGroupName: example.name,
        location: example.location,
        accountTier: "Standard",
        accountReplicationType: "LRS",
    });
    const exampleContainer = new azure.storage.Container("example", {
        name: "examplecontainer",
        storageAccountName: exampleAccount.name,
        containerAccessType: "private",
    });
    const exampleEventHubNamespace = new azure.eventhub.EventHubNamespace("example", {
        name: "example-namespace",
        resourceGroupName: example.name,
        location: example.location,
        sku: "Basic",
    });
    const exampleEventHub = new azure.eventhub.EventHub("example", {
        name: "example-eventhub",
        resourceGroupName: example.name,
        namespaceName: exampleEventHubNamespace.name,
        partitionCount: 2,
        messageRetention: 1,
    });
    const exampleAuthorizationRule = new azure.eventhub.AuthorizationRule("example", {
        resourceGroupName: example.name,
        namespaceName: exampleEventHubNamespace.name,
        eventhubName: exampleEventHub.name,
        name: "acctest",
        send: true,
    });
    const exampleIoTHub = new azure.iot.IoTHub("example", {
        name: "Example-IoTHub",
        resourceGroupName: example.name,
        location: example.location,
        localAuthenticationEnabled: false,
        sku: {
            name: "S1",
            capacity: 1,
        },
        endpoints: [
            {
                type: "AzureIotHub.StorageContainer",
                connectionString: exampleAccount.primaryBlobConnectionString,
                name: "export",
                batchFrequencyInSeconds: 60,
                maxChunkSizeInBytes: 10485760,
                containerName: exampleContainer.name,
                encoding: "Avro",
                fileNameFormat: "{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}",
            },
            {
                type: "AzureIotHub.EventHub",
                connectionString: exampleAuthorizationRule.primaryConnectionString,
                name: "export2",
            },
        ],
        routes: [
            {
                name: "export",
                source: "DeviceMessages",
                condition: "true",
                endpointNames: ["export"],
                enabled: true,
            },
            {
                name: "export2",
                source: "DeviceMessages",
                condition: "true",
                endpointNames: ["export2"],
                enabled: true,
            },
        ],
        enrichments: [{
            key: "tenant",
            value: "$twin.tags.Tenant",
            endpointNames: [
                "export",
                "export2",
            ],
        }],
        cloudToDevice: {
            maxDeliveryCount: 30,
            defaultTtl: "PT1H",
            feedbacks: [{
                timeToLive: "PT1H10M",
                maxDeliveryCount: 15,
                lockDuration: "PT30S",
            }],
        },
        tags: {
            purpose: "testing",
        },
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.core.ResourceGroup("example",
        name="example-resources",
        location="West Europe")
    example_account = azure.storage.Account("example",
        name="examplestorage",
        resource_group_name=example.name,
        location=example.location,
        account_tier="Standard",
        account_replication_type="LRS")
    example_container = azure.storage.Container("example",
        name="examplecontainer",
        storage_account_name=example_account.name,
        container_access_type="private")
    example_event_hub_namespace = azure.eventhub.EventHubNamespace("example",
        name="example-namespace",
        resource_group_name=example.name,
        location=example.location,
        sku="Basic")
    example_event_hub = azure.eventhub.EventHub("example",
        name="example-eventhub",
        resource_group_name=example.name,
        namespace_name=example_event_hub_namespace.name,
        partition_count=2,
        message_retention=1)
    example_authorization_rule = azure.eventhub.AuthorizationRule("example",
        resource_group_name=example.name,
        namespace_name=example_event_hub_namespace.name,
        eventhub_name=example_event_hub.name,
        name="acctest",
        send=True)
    example_io_t_hub = azure.iot.IoTHub("example",
        name="Example-IoTHub",
        resource_group_name=example.name,
        location=example.location,
        local_authentication_enabled=False,
        sku=azure.iot.IoTHubSkuArgs(
            name="S1",
            capacity=1,
        ),
        endpoints=[
            azure.iot.IoTHubEndpointArgs(
                type="AzureIotHub.StorageContainer",
                connection_string=example_account.primary_blob_connection_string,
                name="export",
                batch_frequency_in_seconds=60,
                max_chunk_size_in_bytes=10485760,
                container_name=example_container.name,
                encoding="Avro",
                file_name_format="{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}",
            ),
            azure.iot.IoTHubEndpointArgs(
                type="AzureIotHub.EventHub",
                connection_string=example_authorization_rule.primary_connection_string,
                name="export2",
            ),
        ],
        routes=[
            azure.iot.IoTHubRouteArgs(
                name="export",
                source="DeviceMessages",
                condition="true",
                endpoint_names=["export"],
                enabled=True,
            ),
            azure.iot.IoTHubRouteArgs(
                name="export2",
                source="DeviceMessages",
                condition="true",
                endpoint_names=["export2"],
                enabled=True,
            ),
        ],
        enrichments=[azure.iot.IoTHubEnrichmentArgs(
            key="tenant",
            value="$twin.tags.Tenant",
            endpoint_names=[
                "export",
                "export2",
            ],
        )],
        cloud_to_device=azure.iot.IoTHubCloudToDeviceArgs(
            max_delivery_count=30,
            default_ttl="PT1H",
            feedbacks=[azure.iot.IoTHubCloudToDeviceFeedbackArgs(
                time_to_live="PT1H10M",
                max_delivery_count=15,
                lock_duration="PT30S",
            )],
        ),
        tags={
            "purpose": "testing",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/eventhub"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/iot"
    	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
    			Name:     pulumi.String("example-resources"),
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
    			Name:                   pulumi.String("examplestorage"),
    			ResourceGroupName:      example.Name,
    			Location:               example.Location,
    			AccountTier:            pulumi.String("Standard"),
    			AccountReplicationType: pulumi.String("LRS"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleContainer, err := storage.NewContainer(ctx, "example", &storage.ContainerArgs{
    			Name:                pulumi.String("examplecontainer"),
    			StorageAccountName:  exampleAccount.Name,
    			ContainerAccessType: pulumi.String("private"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleEventHubNamespace, err := eventhub.NewEventHubNamespace(ctx, "example", &eventhub.EventHubNamespaceArgs{
    			Name:              pulumi.String("example-namespace"),
    			ResourceGroupName: example.Name,
    			Location:          example.Location,
    			Sku:               pulumi.String("Basic"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleEventHub, err := eventhub.NewEventHub(ctx, "example", &eventhub.EventHubArgs{
    			Name:              pulumi.String("example-eventhub"),
    			ResourceGroupName: example.Name,
    			NamespaceName:     exampleEventHubNamespace.Name,
    			PartitionCount:    pulumi.Int(2),
    			MessageRetention:  pulumi.Int(1),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAuthorizationRule, err := eventhub.NewAuthorizationRule(ctx, "example", &eventhub.AuthorizationRuleArgs{
    			ResourceGroupName: example.Name,
    			NamespaceName:     exampleEventHubNamespace.Name,
    			EventhubName:      exampleEventHub.Name,
    			Name:              pulumi.String("acctest"),
    			Send:              pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iot.NewIoTHub(ctx, "example", &iot.IoTHubArgs{
    			Name:                       pulumi.String("Example-IoTHub"),
    			ResourceGroupName:          example.Name,
    			Location:                   example.Location,
    			LocalAuthenticationEnabled: pulumi.Bool(false),
    			Sku: &iot.IoTHubSkuArgs{
    				Name:     pulumi.String("S1"),
    				Capacity: pulumi.Int(1),
    			},
    			Endpoints: iot.IoTHubEndpointArray{
    				&iot.IoTHubEndpointArgs{
    					Type:                    pulumi.String("AzureIotHub.StorageContainer"),
    					ConnectionString:        exampleAccount.PrimaryBlobConnectionString,
    					Name:                    pulumi.String("export"),
    					BatchFrequencyInSeconds: pulumi.Int(60),
    					MaxChunkSizeInBytes:     pulumi.Int(10485760),
    					ContainerName:           exampleContainer.Name,
    					Encoding:                pulumi.String("Avro"),
    					FileNameFormat:          pulumi.String("{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}"),
    				},
    				&iot.IoTHubEndpointArgs{
    					Type:             pulumi.String("AzureIotHub.EventHub"),
    					ConnectionString: exampleAuthorizationRule.PrimaryConnectionString,
    					Name:             pulumi.String("export2"),
    				},
    			},
    			Routes: iot.IoTHubRouteArray{
    				&iot.IoTHubRouteArgs{
    					Name:      pulumi.String("export"),
    					Source:    pulumi.String("DeviceMessages"),
    					Condition: pulumi.String("true"),
    					EndpointNames: pulumi.StringArray{
    						pulumi.String("export"),
    					},
    					Enabled: pulumi.Bool(true),
    				},
    				&iot.IoTHubRouteArgs{
    					Name:      pulumi.String("export2"),
    					Source:    pulumi.String("DeviceMessages"),
    					Condition: pulumi.String("true"),
    					EndpointNames: pulumi.StringArray{
    						pulumi.String("export2"),
    					},
    					Enabled: pulumi.Bool(true),
    				},
    			},
    			Enrichments: iot.IoTHubEnrichmentArray{
    				&iot.IoTHubEnrichmentArgs{
    					Key:   pulumi.String("tenant"),
    					Value: pulumi.String("$twin.tags.Tenant"),
    					EndpointNames: pulumi.StringArray{
    						pulumi.String("export"),
    						pulumi.String("export2"),
    					},
    				},
    			},
    			CloudToDevice: &iot.IoTHubCloudToDeviceArgs{
    				MaxDeliveryCount: pulumi.Int(30),
    				DefaultTtl:       pulumi.String("PT1H"),
    				Feedbacks: iot.IoTHubCloudToDeviceFeedbackArray{
    					&iot.IoTHubCloudToDeviceFeedbackArgs{
    						TimeToLive:       pulumi.String("PT1H10M"),
    						MaxDeliveryCount: pulumi.Int(15),
    						LockDuration:     pulumi.String("PT30S"),
    					},
    				},
    			},
    			Tags: pulumi.StringMap{
    				"purpose": pulumi.String("testing"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Azure = Pulumi.Azure;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Azure.Core.ResourceGroup("example", new()
        {
            Name = "example-resources",
            Location = "West Europe",
        });
    
        var exampleAccount = new Azure.Storage.Account("example", new()
        {
            Name = "examplestorage",
            ResourceGroupName = example.Name,
            Location = example.Location,
            AccountTier = "Standard",
            AccountReplicationType = "LRS",
        });
    
        var exampleContainer = new Azure.Storage.Container("example", new()
        {
            Name = "examplecontainer",
            StorageAccountName = exampleAccount.Name,
            ContainerAccessType = "private",
        });
    
        var exampleEventHubNamespace = new Azure.EventHub.EventHubNamespace("example", new()
        {
            Name = "example-namespace",
            ResourceGroupName = example.Name,
            Location = example.Location,
            Sku = "Basic",
        });
    
        var exampleEventHub = new Azure.EventHub.EventHub("example", new()
        {
            Name = "example-eventhub",
            ResourceGroupName = example.Name,
            NamespaceName = exampleEventHubNamespace.Name,
            PartitionCount = 2,
            MessageRetention = 1,
        });
    
        var exampleAuthorizationRule = new Azure.EventHub.AuthorizationRule("example", new()
        {
            ResourceGroupName = example.Name,
            NamespaceName = exampleEventHubNamespace.Name,
            EventhubName = exampleEventHub.Name,
            Name = "acctest",
            Send = true,
        });
    
        var exampleIoTHub = new Azure.Iot.IoTHub("example", new()
        {
            Name = "Example-IoTHub",
            ResourceGroupName = example.Name,
            Location = example.Location,
            LocalAuthenticationEnabled = false,
            Sku = new Azure.Iot.Inputs.IoTHubSkuArgs
            {
                Name = "S1",
                Capacity = 1,
            },
            Endpoints = new[]
            {
                new Azure.Iot.Inputs.IoTHubEndpointArgs
                {
                    Type = "AzureIotHub.StorageContainer",
                    ConnectionString = exampleAccount.PrimaryBlobConnectionString,
                    Name = "export",
                    BatchFrequencyInSeconds = 60,
                    MaxChunkSizeInBytes = 10485760,
                    ContainerName = exampleContainer.Name,
                    Encoding = "Avro",
                    FileNameFormat = "{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}",
                },
                new Azure.Iot.Inputs.IoTHubEndpointArgs
                {
                    Type = "AzureIotHub.EventHub",
                    ConnectionString = exampleAuthorizationRule.PrimaryConnectionString,
                    Name = "export2",
                },
            },
            Routes = new[]
            {
                new Azure.Iot.Inputs.IoTHubRouteArgs
                {
                    Name = "export",
                    Source = "DeviceMessages",
                    Condition = "true",
                    EndpointNames = new[]
                    {
                        "export",
                    },
                    Enabled = true,
                },
                new Azure.Iot.Inputs.IoTHubRouteArgs
                {
                    Name = "export2",
                    Source = "DeviceMessages",
                    Condition = "true",
                    EndpointNames = new[]
                    {
                        "export2",
                    },
                    Enabled = true,
                },
            },
            Enrichments = new[]
            {
                new Azure.Iot.Inputs.IoTHubEnrichmentArgs
                {
                    Key = "tenant",
                    Value = "$twin.tags.Tenant",
                    EndpointNames = new[]
                    {
                        "export",
                        "export2",
                    },
                },
            },
            CloudToDevice = new Azure.Iot.Inputs.IoTHubCloudToDeviceArgs
            {
                MaxDeliveryCount = 30,
                DefaultTtl = "PT1H",
                Feedbacks = new[]
                {
                    new Azure.Iot.Inputs.IoTHubCloudToDeviceFeedbackArgs
                    {
                        TimeToLive = "PT1H10M",
                        MaxDeliveryCount = 15,
                        LockDuration = "PT30S",
                    },
                },
            },
            Tags = 
            {
                { "purpose", "testing" },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.azure.core.ResourceGroup;
    import com.pulumi.azure.core.ResourceGroupArgs;
    import com.pulumi.azure.storage.Account;
    import com.pulumi.azure.storage.AccountArgs;
    import com.pulumi.azure.storage.Container;
    import com.pulumi.azure.storage.ContainerArgs;
    import com.pulumi.azure.eventhub.EventHubNamespace;
    import com.pulumi.azure.eventhub.EventHubNamespaceArgs;
    import com.pulumi.azure.eventhub.EventHub;
    import com.pulumi.azure.eventhub.EventHubArgs;
    import com.pulumi.azure.eventhub.AuthorizationRule;
    import com.pulumi.azure.eventhub.AuthorizationRuleArgs;
    import com.pulumi.azure.iot.IoTHub;
    import com.pulumi.azure.iot.IoTHubArgs;
    import com.pulumi.azure.iot.inputs.IoTHubSkuArgs;
    import com.pulumi.azure.iot.inputs.IoTHubEndpointArgs;
    import com.pulumi.azure.iot.inputs.IoTHubRouteArgs;
    import com.pulumi.azure.iot.inputs.IoTHubEnrichmentArgs;
    import com.pulumi.azure.iot.inputs.IoTHubCloudToDeviceArgs;
    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 example = new ResourceGroup("example", ResourceGroupArgs.builder()        
                .name("example-resources")
                .location("West Europe")
                .build());
    
            var exampleAccount = new Account("exampleAccount", AccountArgs.builder()        
                .name("examplestorage")
                .resourceGroupName(example.name())
                .location(example.location())
                .accountTier("Standard")
                .accountReplicationType("LRS")
                .build());
    
            var exampleContainer = new Container("exampleContainer", ContainerArgs.builder()        
                .name("examplecontainer")
                .storageAccountName(exampleAccount.name())
                .containerAccessType("private")
                .build());
    
            var exampleEventHubNamespace = new EventHubNamespace("exampleEventHubNamespace", EventHubNamespaceArgs.builder()        
                .name("example-namespace")
                .resourceGroupName(example.name())
                .location(example.location())
                .sku("Basic")
                .build());
    
            var exampleEventHub = new EventHub("exampleEventHub", EventHubArgs.builder()        
                .name("example-eventhub")
                .resourceGroupName(example.name())
                .namespaceName(exampleEventHubNamespace.name())
                .partitionCount(2)
                .messageRetention(1)
                .build());
    
            var exampleAuthorizationRule = new AuthorizationRule("exampleAuthorizationRule", AuthorizationRuleArgs.builder()        
                .resourceGroupName(example.name())
                .namespaceName(exampleEventHubNamespace.name())
                .eventhubName(exampleEventHub.name())
                .name("acctest")
                .send(true)
                .build());
    
            var exampleIoTHub = new IoTHub("exampleIoTHub", IoTHubArgs.builder()        
                .name("Example-IoTHub")
                .resourceGroupName(example.name())
                .location(example.location())
                .localAuthenticationEnabled(false)
                .sku(IoTHubSkuArgs.builder()
                    .name("S1")
                    .capacity("1")
                    .build())
                .endpoints(            
                    IoTHubEndpointArgs.builder()
                        .type("AzureIotHub.StorageContainer")
                        .connectionString(exampleAccount.primaryBlobConnectionString())
                        .name("export")
                        .batchFrequencyInSeconds(60)
                        .maxChunkSizeInBytes(10485760)
                        .containerName(exampleContainer.name())
                        .encoding("Avro")
                        .fileNameFormat("{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}")
                        .build(),
                    IoTHubEndpointArgs.builder()
                        .type("AzureIotHub.EventHub")
                        .connectionString(exampleAuthorizationRule.primaryConnectionString())
                        .name("export2")
                        .build())
                .routes(            
                    IoTHubRouteArgs.builder()
                        .name("export")
                        .source("DeviceMessages")
                        .condition("true")
                        .endpointNames("export")
                        .enabled(true)
                        .build(),
                    IoTHubRouteArgs.builder()
                        .name("export2")
                        .source("DeviceMessages")
                        .condition("true")
                        .endpointNames("export2")
                        .enabled(true)
                        .build())
                .enrichments(IoTHubEnrichmentArgs.builder()
                    .key("tenant")
                    .value("$twin.tags.Tenant")
                    .endpointNames(                
                        "export",
                        "export2")
                    .build())
                .cloudToDevice(IoTHubCloudToDeviceArgs.builder()
                    .maxDeliveryCount(30)
                    .defaultTtl("PT1H")
                    .feedbacks(IoTHubCloudToDeviceFeedbackArgs.builder()
                        .timeToLive("PT1H10M")
                        .maxDeliveryCount(15)
                        .lockDuration("PT30S")
                        .build())
                    .build())
                .tags(Map.of("purpose", "testing"))
                .build());
    
        }
    }
    
    resources:
      example:
        type: azure:core:ResourceGroup
        properties:
          name: example-resources
          location: West Europe
      exampleAccount:
        type: azure:storage:Account
        name: example
        properties:
          name: examplestorage
          resourceGroupName: ${example.name}
          location: ${example.location}
          accountTier: Standard
          accountReplicationType: LRS
      exampleContainer:
        type: azure:storage:Container
        name: example
        properties:
          name: examplecontainer
          storageAccountName: ${exampleAccount.name}
          containerAccessType: private
      exampleEventHubNamespace:
        type: azure:eventhub:EventHubNamespace
        name: example
        properties:
          name: example-namespace
          resourceGroupName: ${example.name}
          location: ${example.location}
          sku: Basic
      exampleEventHub:
        type: azure:eventhub:EventHub
        name: example
        properties:
          name: example-eventhub
          resourceGroupName: ${example.name}
          namespaceName: ${exampleEventHubNamespace.name}
          partitionCount: 2
          messageRetention: 1
      exampleAuthorizationRule:
        type: azure:eventhub:AuthorizationRule
        name: example
        properties:
          resourceGroupName: ${example.name}
          namespaceName: ${exampleEventHubNamespace.name}
          eventhubName: ${exampleEventHub.name}
          name: acctest
          send: true
      exampleIoTHub:
        type: azure:iot:IoTHub
        name: example
        properties:
          name: Example-IoTHub
          resourceGroupName: ${example.name}
          location: ${example.location}
          localAuthenticationEnabled: false
          sku:
            name: S1
            capacity: '1'
          endpoints:
            - type: AzureIotHub.StorageContainer
              connectionString: ${exampleAccount.primaryBlobConnectionString}
              name: export
              batchFrequencyInSeconds: 60
              maxChunkSizeInBytes: 1.048576e+07
              containerName: ${exampleContainer.name}
              encoding: Avro
              fileNameFormat: '{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}'
            - type: AzureIotHub.EventHub
              connectionString: ${exampleAuthorizationRule.primaryConnectionString}
              name: export2
          routes:
            - name: export
              source: DeviceMessages
              condition: 'true'
              endpointNames:
                - export
              enabled: true
            - name: export2
              source: DeviceMessages
              condition: 'true'
              endpointNames:
                - export2
              enabled: true
          enrichments:
            - key: tenant
              value: $twin.tags.Tenant
              endpointNames:
                - export
                - export2
          cloudToDevice:
            maxDeliveryCount: 30
            defaultTtl: PT1H
            feedbacks:
              - timeToLive: PT1H10M
                maxDeliveryCount: 15
                lockDuration: PT30S
          tags:
            purpose: testing
    

    Create IoTHub Resource

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

    Constructor syntax

    new IoTHub(name: string, args: IoTHubArgs, opts?: CustomResourceOptions);
    @overload
    def IoTHub(resource_name: str,
               args: IoTHubArgs,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def IoTHub(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               resource_group_name: Optional[str] = None,
               sku: Optional[IoTHubSkuArgs] = None,
               local_authentication_enabled: Optional[bool] = None,
               location: Optional[str] = None,
               event_hub_retention_in_days: Optional[int] = None,
               fallback_route: Optional[IoTHubFallbackRouteArgs] = None,
               file_upload: Optional[IoTHubFileUploadArgs] = None,
               identity: Optional[IoTHubIdentityArgs] = None,
               cloud_to_device: Optional[IoTHubCloudToDeviceArgs] = None,
               event_hub_partition_count: Optional[int] = None,
               min_tls_version: Optional[str] = None,
               name: Optional[str] = None,
               network_rule_sets: Optional[Sequence[IoTHubNetworkRuleSetArgs]] = None,
               public_network_access_enabled: Optional[bool] = None,
               enrichments: Optional[Sequence[IoTHubEnrichmentArgs]] = None,
               routes: Optional[Sequence[IoTHubRouteArgs]] = None,
               endpoints: Optional[Sequence[IoTHubEndpointArgs]] = None,
               tags: Optional[Mapping[str, str]] = None)
    func NewIoTHub(ctx *Context, name string, args IoTHubArgs, opts ...ResourceOption) (*IoTHub, error)
    public IoTHub(string name, IoTHubArgs args, CustomResourceOptions? opts = null)
    public IoTHub(String name, IoTHubArgs args)
    public IoTHub(String name, IoTHubArgs args, CustomResourceOptions options)
    
    type: azure:iot:IoTHub
    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 IoTHubArgs
    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 IoTHubArgs
    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 IoTHubArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args IoTHubArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args IoTHubArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

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

    var ioTHubResource = new Azure.Iot.IoTHub("ioTHubResource", new()
    {
        ResourceGroupName = "string",
        Sku = new Azure.Iot.Inputs.IoTHubSkuArgs
        {
            Capacity = 0,
            Name = "string",
        },
        LocalAuthenticationEnabled = false,
        Location = "string",
        EventHubRetentionInDays = 0,
        FallbackRoute = new Azure.Iot.Inputs.IoTHubFallbackRouteArgs
        {
            Condition = "string",
            Enabled = false,
            EndpointNames = new[]
            {
                "string",
            },
            Source = "string",
        },
        FileUpload = new Azure.Iot.Inputs.IoTHubFileUploadArgs
        {
            ConnectionString = "string",
            ContainerName = "string",
            AuthenticationType = "string",
            DefaultTtl = "string",
            IdentityId = "string",
            LockDuration = "string",
            MaxDeliveryCount = 0,
            Notifications = false,
            SasTtl = "string",
        },
        Identity = new Azure.Iot.Inputs.IoTHubIdentityArgs
        {
            Type = "string",
            IdentityIds = new[]
            {
                "string",
            },
            PrincipalId = "string",
            TenantId = "string",
        },
        CloudToDevice = new Azure.Iot.Inputs.IoTHubCloudToDeviceArgs
        {
            DefaultTtl = "string",
            Feedbacks = new[]
            {
                new Azure.Iot.Inputs.IoTHubCloudToDeviceFeedbackArgs
                {
                    LockDuration = "string",
                    MaxDeliveryCount = 0,
                    TimeToLive = "string",
                },
            },
            MaxDeliveryCount = 0,
        },
        EventHubPartitionCount = 0,
        MinTlsVersion = "string",
        Name = "string",
        NetworkRuleSets = new[]
        {
            new Azure.Iot.Inputs.IoTHubNetworkRuleSetArgs
            {
                ApplyToBuiltinEventhubEndpoint = false,
                DefaultAction = "string",
                IpRules = new[]
                {
                    new Azure.Iot.Inputs.IoTHubNetworkRuleSetIpRuleArgs
                    {
                        IpMask = "string",
                        Name = "string",
                        Action = "string",
                    },
                },
            },
        },
        PublicNetworkAccessEnabled = false,
        Enrichments = new[]
        {
            new Azure.Iot.Inputs.IoTHubEnrichmentArgs
            {
                EndpointNames = new[]
                {
                    "string",
                },
                Key = "string",
                Value = "string",
            },
        },
        Routes = new[]
        {
            new Azure.Iot.Inputs.IoTHubRouteArgs
            {
                Enabled = false,
                EndpointNames = new[]
                {
                    "string",
                },
                Name = "string",
                Source = "string",
                Condition = "string",
            },
        },
        Endpoints = new[]
        {
            new Azure.Iot.Inputs.IoTHubEndpointArgs
            {
                Name = "string",
                Type = "string",
                EntityPath = "string",
                ContainerName = "string",
                Encoding = "string",
                EndpointUri = "string",
                AuthenticationType = "string",
                FileNameFormat = "string",
                IdentityId = "string",
                MaxChunkSizeInBytes = 0,
                ConnectionString = "string",
                ResourceGroupName = "string",
                BatchFrequencyInSeconds = 0,
            },
        },
        Tags = 
        {
            { "string", "string" },
        },
    });
    
    example, err := iot.NewIoTHub(ctx, "ioTHubResource", &iot.IoTHubArgs{
    	ResourceGroupName: pulumi.String("string"),
    	Sku: &iot.IoTHubSkuArgs{
    		Capacity: pulumi.Int(0),
    		Name:     pulumi.String("string"),
    	},
    	LocalAuthenticationEnabled: pulumi.Bool(false),
    	Location:                   pulumi.String("string"),
    	EventHubRetentionInDays:    pulumi.Int(0),
    	FallbackRoute: &iot.IoTHubFallbackRouteArgs{
    		Condition: pulumi.String("string"),
    		Enabled:   pulumi.Bool(false),
    		EndpointNames: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		Source: pulumi.String("string"),
    	},
    	FileUpload: &iot.IoTHubFileUploadArgs{
    		ConnectionString:   pulumi.String("string"),
    		ContainerName:      pulumi.String("string"),
    		AuthenticationType: pulumi.String("string"),
    		DefaultTtl:         pulumi.String("string"),
    		IdentityId:         pulumi.String("string"),
    		LockDuration:       pulumi.String("string"),
    		MaxDeliveryCount:   pulumi.Int(0),
    		Notifications:      pulumi.Bool(false),
    		SasTtl:             pulumi.String("string"),
    	},
    	Identity: &iot.IoTHubIdentityArgs{
    		Type: pulumi.String("string"),
    		IdentityIds: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    		PrincipalId: pulumi.String("string"),
    		TenantId:    pulumi.String("string"),
    	},
    	CloudToDevice: &iot.IoTHubCloudToDeviceArgs{
    		DefaultTtl: pulumi.String("string"),
    		Feedbacks: iot.IoTHubCloudToDeviceFeedbackArray{
    			&iot.IoTHubCloudToDeviceFeedbackArgs{
    				LockDuration:     pulumi.String("string"),
    				MaxDeliveryCount: pulumi.Int(0),
    				TimeToLive:       pulumi.String("string"),
    			},
    		},
    		MaxDeliveryCount: pulumi.Int(0),
    	},
    	EventHubPartitionCount: pulumi.Int(0),
    	MinTlsVersion:          pulumi.String("string"),
    	Name:                   pulumi.String("string"),
    	NetworkRuleSets: iot.IoTHubNetworkRuleSetArray{
    		&iot.IoTHubNetworkRuleSetArgs{
    			ApplyToBuiltinEventhubEndpoint: pulumi.Bool(false),
    			DefaultAction:                  pulumi.String("string"),
    			IpRules: iot.IoTHubNetworkRuleSetIpRuleArray{
    				&iot.IoTHubNetworkRuleSetIpRuleArgs{
    					IpMask: pulumi.String("string"),
    					Name:   pulumi.String("string"),
    					Action: pulumi.String("string"),
    				},
    			},
    		},
    	},
    	PublicNetworkAccessEnabled: pulumi.Bool(false),
    	Enrichments: iot.IoTHubEnrichmentArray{
    		&iot.IoTHubEnrichmentArgs{
    			EndpointNames: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	Routes: iot.IoTHubRouteArray{
    		&iot.IoTHubRouteArgs{
    			Enabled: pulumi.Bool(false),
    			EndpointNames: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			Name:      pulumi.String("string"),
    			Source:    pulumi.String("string"),
    			Condition: pulumi.String("string"),
    		},
    	},
    	Endpoints: iot.IoTHubEndpointArray{
    		&iot.IoTHubEndpointArgs{
    			Name:                    pulumi.String("string"),
    			Type:                    pulumi.String("string"),
    			EntityPath:              pulumi.String("string"),
    			ContainerName:           pulumi.String("string"),
    			Encoding:                pulumi.String("string"),
    			EndpointUri:             pulumi.String("string"),
    			AuthenticationType:      pulumi.String("string"),
    			FileNameFormat:          pulumi.String("string"),
    			IdentityId:              pulumi.String("string"),
    			MaxChunkSizeInBytes:     pulumi.Int(0),
    			ConnectionString:        pulumi.String("string"),
    			ResourceGroupName:       pulumi.String("string"),
    			BatchFrequencyInSeconds: pulumi.Int(0),
    		},
    	},
    	Tags: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    var ioTHubResource = new IoTHub("ioTHubResource", IoTHubArgs.builder()        
        .resourceGroupName("string")
        .sku(IoTHubSkuArgs.builder()
            .capacity(0)
            .name("string")
            .build())
        .localAuthenticationEnabled(false)
        .location("string")
        .eventHubRetentionInDays(0)
        .fallbackRoute(IoTHubFallbackRouteArgs.builder()
            .condition("string")
            .enabled(false)
            .endpointNames("string")
            .source("string")
            .build())
        .fileUpload(IoTHubFileUploadArgs.builder()
            .connectionString("string")
            .containerName("string")
            .authenticationType("string")
            .defaultTtl("string")
            .identityId("string")
            .lockDuration("string")
            .maxDeliveryCount(0)
            .notifications(false)
            .sasTtl("string")
            .build())
        .identity(IoTHubIdentityArgs.builder()
            .type("string")
            .identityIds("string")
            .principalId("string")
            .tenantId("string")
            .build())
        .cloudToDevice(IoTHubCloudToDeviceArgs.builder()
            .defaultTtl("string")
            .feedbacks(IoTHubCloudToDeviceFeedbackArgs.builder()
                .lockDuration("string")
                .maxDeliveryCount(0)
                .timeToLive("string")
                .build())
            .maxDeliveryCount(0)
            .build())
        .eventHubPartitionCount(0)
        .minTlsVersion("string")
        .name("string")
        .networkRuleSets(IoTHubNetworkRuleSetArgs.builder()
            .applyToBuiltinEventhubEndpoint(false)
            .defaultAction("string")
            .ipRules(IoTHubNetworkRuleSetIpRuleArgs.builder()
                .ipMask("string")
                .name("string")
                .action("string")
                .build())
            .build())
        .publicNetworkAccessEnabled(false)
        .enrichments(IoTHubEnrichmentArgs.builder()
            .endpointNames("string")
            .key("string")
            .value("string")
            .build())
        .routes(IoTHubRouteArgs.builder()
            .enabled(false)
            .endpointNames("string")
            .name("string")
            .source("string")
            .condition("string")
            .build())
        .endpoints(IoTHubEndpointArgs.builder()
            .name("string")
            .type("string")
            .entityPath("string")
            .containerName("string")
            .encoding("string")
            .endpointUri("string")
            .authenticationType("string")
            .fileNameFormat("string")
            .identityId("string")
            .maxChunkSizeInBytes(0)
            .connectionString("string")
            .resourceGroupName("string")
            .batchFrequencyInSeconds(0)
            .build())
        .tags(Map.of("string", "string"))
        .build());
    
    io_t_hub_resource = azure.iot.IoTHub("ioTHubResource",
        resource_group_name="string",
        sku=azure.iot.IoTHubSkuArgs(
            capacity=0,
            name="string",
        ),
        local_authentication_enabled=False,
        location="string",
        event_hub_retention_in_days=0,
        fallback_route=azure.iot.IoTHubFallbackRouteArgs(
            condition="string",
            enabled=False,
            endpoint_names=["string"],
            source="string",
        ),
        file_upload=azure.iot.IoTHubFileUploadArgs(
            connection_string="string",
            container_name="string",
            authentication_type="string",
            default_ttl="string",
            identity_id="string",
            lock_duration="string",
            max_delivery_count=0,
            notifications=False,
            sas_ttl="string",
        ),
        identity=azure.iot.IoTHubIdentityArgs(
            type="string",
            identity_ids=["string"],
            principal_id="string",
            tenant_id="string",
        ),
        cloud_to_device=azure.iot.IoTHubCloudToDeviceArgs(
            default_ttl="string",
            feedbacks=[azure.iot.IoTHubCloudToDeviceFeedbackArgs(
                lock_duration="string",
                max_delivery_count=0,
                time_to_live="string",
            )],
            max_delivery_count=0,
        ),
        event_hub_partition_count=0,
        min_tls_version="string",
        name="string",
        network_rule_sets=[azure.iot.IoTHubNetworkRuleSetArgs(
            apply_to_builtin_eventhub_endpoint=False,
            default_action="string",
            ip_rules=[azure.iot.IoTHubNetworkRuleSetIpRuleArgs(
                ip_mask="string",
                name="string",
                action="string",
            )],
        )],
        public_network_access_enabled=False,
        enrichments=[azure.iot.IoTHubEnrichmentArgs(
            endpoint_names=["string"],
            key="string",
            value="string",
        )],
        routes=[azure.iot.IoTHubRouteArgs(
            enabled=False,
            endpoint_names=["string"],
            name="string",
            source="string",
            condition="string",
        )],
        endpoints=[azure.iot.IoTHubEndpointArgs(
            name="string",
            type="string",
            entity_path="string",
            container_name="string",
            encoding="string",
            endpoint_uri="string",
            authentication_type="string",
            file_name_format="string",
            identity_id="string",
            max_chunk_size_in_bytes=0,
            connection_string="string",
            resource_group_name="string",
            batch_frequency_in_seconds=0,
        )],
        tags={
            "string": "string",
        })
    
    const ioTHubResource = new azure.iot.IoTHub("ioTHubResource", {
        resourceGroupName: "string",
        sku: {
            capacity: 0,
            name: "string",
        },
        localAuthenticationEnabled: false,
        location: "string",
        eventHubRetentionInDays: 0,
        fallbackRoute: {
            condition: "string",
            enabled: false,
            endpointNames: ["string"],
            source: "string",
        },
        fileUpload: {
            connectionString: "string",
            containerName: "string",
            authenticationType: "string",
            defaultTtl: "string",
            identityId: "string",
            lockDuration: "string",
            maxDeliveryCount: 0,
            notifications: false,
            sasTtl: "string",
        },
        identity: {
            type: "string",
            identityIds: ["string"],
            principalId: "string",
            tenantId: "string",
        },
        cloudToDevice: {
            defaultTtl: "string",
            feedbacks: [{
                lockDuration: "string",
                maxDeliveryCount: 0,
                timeToLive: "string",
            }],
            maxDeliveryCount: 0,
        },
        eventHubPartitionCount: 0,
        minTlsVersion: "string",
        name: "string",
        networkRuleSets: [{
            applyToBuiltinEventhubEndpoint: false,
            defaultAction: "string",
            ipRules: [{
                ipMask: "string",
                name: "string",
                action: "string",
            }],
        }],
        publicNetworkAccessEnabled: false,
        enrichments: [{
            endpointNames: ["string"],
            key: "string",
            value: "string",
        }],
        routes: [{
            enabled: false,
            endpointNames: ["string"],
            name: "string",
            source: "string",
            condition: "string",
        }],
        endpoints: [{
            name: "string",
            type: "string",
            entityPath: "string",
            containerName: "string",
            encoding: "string",
            endpointUri: "string",
            authenticationType: "string",
            fileNameFormat: "string",
            identityId: "string",
            maxChunkSizeInBytes: 0,
            connectionString: "string",
            resourceGroupName: "string",
            batchFrequencyInSeconds: 0,
        }],
        tags: {
            string: "string",
        },
    });
    
    type: azure:iot:IoTHub
    properties:
        cloudToDevice:
            defaultTtl: string
            feedbacks:
                - lockDuration: string
                  maxDeliveryCount: 0
                  timeToLive: string
            maxDeliveryCount: 0
        endpoints:
            - authenticationType: string
              batchFrequencyInSeconds: 0
              connectionString: string
              containerName: string
              encoding: string
              endpointUri: string
              entityPath: string
              fileNameFormat: string
              identityId: string
              maxChunkSizeInBytes: 0
              name: string
              resourceGroupName: string
              type: string
        enrichments:
            - endpointNames:
                - string
              key: string
              value: string
        eventHubPartitionCount: 0
        eventHubRetentionInDays: 0
        fallbackRoute:
            condition: string
            enabled: false
            endpointNames:
                - string
            source: string
        fileUpload:
            authenticationType: string
            connectionString: string
            containerName: string
            defaultTtl: string
            identityId: string
            lockDuration: string
            maxDeliveryCount: 0
            notifications: false
            sasTtl: string
        identity:
            identityIds:
                - string
            principalId: string
            tenantId: string
            type: string
        localAuthenticationEnabled: false
        location: string
        minTlsVersion: string
        name: string
        networkRuleSets:
            - applyToBuiltinEventhubEndpoint: false
              defaultAction: string
              ipRules:
                - action: string
                  ipMask: string
                  name: string
        publicNetworkAccessEnabled: false
        resourceGroupName: string
        routes:
            - condition: string
              enabled: false
              endpointNames:
                - string
              name: string
              source: string
        sku:
            capacity: 0
            name: string
        tags:
            string: string
    

    IoTHub 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 IoTHub resource accepts the following input properties:

    ResourceGroupName string
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    Sku IoTHubSku
    A sku block as defined below.
    CloudToDevice IoTHubCloudToDevice
    A cloud_to_device block as defined below.
    Endpoints List<IoTHubEndpoint>
    An endpoint block as defined below.
    Enrichments List<IoTHubEnrichment>
    A enrichment block as defined below.
    EventHubPartitionCount int
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    EventHubRetentionInDays int
    The event hub retention to use in days. Must be between 1 and 7.
    FallbackRoute IoTHubFallbackRoute

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    FileUpload IoTHubFileUpload
    A file_upload block as defined below.
    Identity IoTHubIdentity
    An identity block as defined below.
    LocalAuthenticationEnabled bool
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    Location string
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    MinTlsVersion string
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    Name string
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    NetworkRuleSets List<IoTHubNetworkRuleSet>
    A network_rule_set block as defined below.
    PublicNetworkAccessEnabled bool
    Is the IotHub resource accessible from a public network?
    Routes List<IoTHubRoute>
    A route block as defined below.
    Tags Dictionary<string, string>
    A mapping of tags to assign to the resource.
    ResourceGroupName string
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    Sku IoTHubSkuArgs
    A sku block as defined below.
    CloudToDevice IoTHubCloudToDeviceArgs
    A cloud_to_device block as defined below.
    Endpoints []IoTHubEndpointArgs
    An endpoint block as defined below.
    Enrichments []IoTHubEnrichmentArgs
    A enrichment block as defined below.
    EventHubPartitionCount int
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    EventHubRetentionInDays int
    The event hub retention to use in days. Must be between 1 and 7.
    FallbackRoute IoTHubFallbackRouteArgs

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    FileUpload IoTHubFileUploadArgs
    A file_upload block as defined below.
    Identity IoTHubIdentityArgs
    An identity block as defined below.
    LocalAuthenticationEnabled bool
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    Location string
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    MinTlsVersion string
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    Name string
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    NetworkRuleSets []IoTHubNetworkRuleSetArgs
    A network_rule_set block as defined below.
    PublicNetworkAccessEnabled bool
    Is the IotHub resource accessible from a public network?
    Routes []IoTHubRouteArgs
    A route block as defined below.
    Tags map[string]string
    A mapping of tags to assign to the resource.
    resourceGroupName String
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    sku IoTHubSku
    A sku block as defined below.
    cloudToDevice IoTHubCloudToDevice
    A cloud_to_device block as defined below.
    endpoints List<IoTHubEndpoint>
    An endpoint block as defined below.
    enrichments List<IoTHubEnrichment>
    A enrichment block as defined below.
    eventHubPartitionCount Integer
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    eventHubRetentionInDays Integer
    The event hub retention to use in days. Must be between 1 and 7.
    fallbackRoute IoTHubFallbackRoute

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    fileUpload IoTHubFileUpload
    A file_upload block as defined below.
    identity IoTHubIdentity
    An identity block as defined below.
    localAuthenticationEnabled Boolean
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location String
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    minTlsVersion String
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name String
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    networkRuleSets List<IoTHubNetworkRuleSet>
    A network_rule_set block as defined below.
    publicNetworkAccessEnabled Boolean
    Is the IotHub resource accessible from a public network?
    routes List<IoTHubRoute>
    A route block as defined below.
    tags Map<String,String>
    A mapping of tags to assign to the resource.
    resourceGroupName string
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    sku IoTHubSku
    A sku block as defined below.
    cloudToDevice IoTHubCloudToDevice
    A cloud_to_device block as defined below.
    endpoints IoTHubEndpoint[]
    An endpoint block as defined below.
    enrichments IoTHubEnrichment[]
    A enrichment block as defined below.
    eventHubPartitionCount number
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    eventHubRetentionInDays number
    The event hub retention to use in days. Must be between 1 and 7.
    fallbackRoute IoTHubFallbackRoute

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    fileUpload IoTHubFileUpload
    A file_upload block as defined below.
    identity IoTHubIdentity
    An identity block as defined below.
    localAuthenticationEnabled boolean
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location string
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    minTlsVersion string
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name string
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    networkRuleSets IoTHubNetworkRuleSet[]
    A network_rule_set block as defined below.
    publicNetworkAccessEnabled boolean
    Is the IotHub resource accessible from a public network?
    routes IoTHubRoute[]
    A route block as defined below.
    tags {[key: string]: string}
    A mapping of tags to assign to the resource.
    resource_group_name str
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    sku IoTHubSkuArgs
    A sku block as defined below.
    cloud_to_device IoTHubCloudToDeviceArgs
    A cloud_to_device block as defined below.
    endpoints Sequence[IoTHubEndpointArgs]
    An endpoint block as defined below.
    enrichments Sequence[IoTHubEnrichmentArgs]
    A enrichment block as defined below.
    event_hub_partition_count int
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    event_hub_retention_in_days int
    The event hub retention to use in days. Must be between 1 and 7.
    fallback_route IoTHubFallbackRouteArgs

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    file_upload IoTHubFileUploadArgs
    A file_upload block as defined below.
    identity IoTHubIdentityArgs
    An identity block as defined below.
    local_authentication_enabled bool
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location str
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    min_tls_version str
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name str
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    network_rule_sets Sequence[IoTHubNetworkRuleSetArgs]
    A network_rule_set block as defined below.
    public_network_access_enabled bool
    Is the IotHub resource accessible from a public network?
    routes Sequence[IoTHubRouteArgs]
    A route block as defined below.
    tags Mapping[str, str]
    A mapping of tags to assign to the resource.
    resourceGroupName String
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    sku Property Map
    A sku block as defined below.
    cloudToDevice Property Map
    A cloud_to_device block as defined below.
    endpoints List<Property Map>
    An endpoint block as defined below.
    enrichments List<Property Map>
    A enrichment block as defined below.
    eventHubPartitionCount Number
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    eventHubRetentionInDays Number
    The event hub retention to use in days. Must be between 1 and 7.
    fallbackRoute Property Map

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    fileUpload Property Map
    A file_upload block as defined below.
    identity Property Map
    An identity block as defined below.
    localAuthenticationEnabled Boolean
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location String
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    minTlsVersion String
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name String
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    networkRuleSets List<Property Map>
    A network_rule_set block as defined below.
    publicNetworkAccessEnabled Boolean
    Is the IotHub resource accessible from a public network?
    routes List<Property Map>
    A route block as defined below.
    tags Map<String>
    A mapping of tags to assign to the resource.

    Outputs

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

    EventHubEventsEndpoint string
    The EventHub compatible endpoint for events data
    EventHubEventsNamespace string
    The EventHub namespace for events data
    EventHubEventsPath string
    The EventHub compatible path for events data
    EventHubOperationsEndpoint string
    The EventHub compatible endpoint for operational data
    EventHubOperationsPath string
    The EventHub compatible path for operational data
    Hostname string
    The hostname of the IotHub Resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    SharedAccessPolicies List<IoTHubSharedAccessPolicy>
    One or more shared_access_policy blocks as defined below.
    Type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    EventHubEventsEndpoint string
    The EventHub compatible endpoint for events data
    EventHubEventsNamespace string
    The EventHub namespace for events data
    EventHubEventsPath string
    The EventHub compatible path for events data
    EventHubOperationsEndpoint string
    The EventHub compatible endpoint for operational data
    EventHubOperationsPath string
    The EventHub compatible path for operational data
    Hostname string
    The hostname of the IotHub Resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    SharedAccessPolicies []IoTHubSharedAccessPolicy
    One or more shared_access_policy blocks as defined below.
    Type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    eventHubEventsEndpoint String
    The EventHub compatible endpoint for events data
    eventHubEventsNamespace String
    The EventHub namespace for events data
    eventHubEventsPath String
    The EventHub compatible path for events data
    eventHubOperationsEndpoint String
    The EventHub compatible endpoint for operational data
    eventHubOperationsPath String
    The EventHub compatible path for operational data
    hostname String
    The hostname of the IotHub Resource.
    id String
    The provider-assigned unique ID for this managed resource.
    sharedAccessPolicies List<IoTHubSharedAccessPolicy>
    One or more shared_access_policy blocks as defined below.
    type String
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    eventHubEventsEndpoint string
    The EventHub compatible endpoint for events data
    eventHubEventsNamespace string
    The EventHub namespace for events data
    eventHubEventsPath string
    The EventHub compatible path for events data
    eventHubOperationsEndpoint string
    The EventHub compatible endpoint for operational data
    eventHubOperationsPath string
    The EventHub compatible path for operational data
    hostname string
    The hostname of the IotHub Resource.
    id string
    The provider-assigned unique ID for this managed resource.
    sharedAccessPolicies IoTHubSharedAccessPolicy[]
    One or more shared_access_policy blocks as defined below.
    type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    event_hub_events_endpoint str
    The EventHub compatible endpoint for events data
    event_hub_events_namespace str
    The EventHub namespace for events data
    event_hub_events_path str
    The EventHub compatible path for events data
    event_hub_operations_endpoint str
    The EventHub compatible endpoint for operational data
    event_hub_operations_path str
    The EventHub compatible path for operational data
    hostname str
    The hostname of the IotHub Resource.
    id str
    The provider-assigned unique ID for this managed resource.
    shared_access_policies Sequence[IoTHubSharedAccessPolicy]
    One or more shared_access_policy blocks as defined below.
    type str
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    eventHubEventsEndpoint String
    The EventHub compatible endpoint for events data
    eventHubEventsNamespace String
    The EventHub namespace for events data
    eventHubEventsPath String
    The EventHub compatible path for events data
    eventHubOperationsEndpoint String
    The EventHub compatible endpoint for operational data
    eventHubOperationsPath String
    The EventHub compatible path for operational data
    hostname String
    The hostname of the IotHub Resource.
    id String
    The provider-assigned unique ID for this managed resource.
    sharedAccessPolicies List<Property Map>
    One or more shared_access_policy blocks as defined below.
    type String
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.

    Look up Existing IoTHub Resource

    Get an existing IoTHub 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?: IoTHubState, opts?: CustomResourceOptions): IoTHub
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            cloud_to_device: Optional[IoTHubCloudToDeviceArgs] = None,
            endpoints: Optional[Sequence[IoTHubEndpointArgs]] = None,
            enrichments: Optional[Sequence[IoTHubEnrichmentArgs]] = None,
            event_hub_events_endpoint: Optional[str] = None,
            event_hub_events_namespace: Optional[str] = None,
            event_hub_events_path: Optional[str] = None,
            event_hub_operations_endpoint: Optional[str] = None,
            event_hub_operations_path: Optional[str] = None,
            event_hub_partition_count: Optional[int] = None,
            event_hub_retention_in_days: Optional[int] = None,
            fallback_route: Optional[IoTHubFallbackRouteArgs] = None,
            file_upload: Optional[IoTHubFileUploadArgs] = None,
            hostname: Optional[str] = None,
            identity: Optional[IoTHubIdentityArgs] = None,
            local_authentication_enabled: Optional[bool] = None,
            location: Optional[str] = None,
            min_tls_version: Optional[str] = None,
            name: Optional[str] = None,
            network_rule_sets: Optional[Sequence[IoTHubNetworkRuleSetArgs]] = None,
            public_network_access_enabled: Optional[bool] = None,
            resource_group_name: Optional[str] = None,
            routes: Optional[Sequence[IoTHubRouteArgs]] = None,
            shared_access_policies: Optional[Sequence[IoTHubSharedAccessPolicyArgs]] = None,
            sku: Optional[IoTHubSkuArgs] = None,
            tags: Optional[Mapping[str, str]] = None,
            type: Optional[str] = None) -> IoTHub
    func GetIoTHub(ctx *Context, name string, id IDInput, state *IoTHubState, opts ...ResourceOption) (*IoTHub, error)
    public static IoTHub Get(string name, Input<string> id, IoTHubState? state, CustomResourceOptions? opts = null)
    public static IoTHub get(String name, Output<String> id, IoTHubState 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:
    CloudToDevice IoTHubCloudToDevice
    A cloud_to_device block as defined below.
    Endpoints List<IoTHubEndpoint>
    An endpoint block as defined below.
    Enrichments List<IoTHubEnrichment>
    A enrichment block as defined below.
    EventHubEventsEndpoint string
    The EventHub compatible endpoint for events data
    EventHubEventsNamespace string
    The EventHub namespace for events data
    EventHubEventsPath string
    The EventHub compatible path for events data
    EventHubOperationsEndpoint string
    The EventHub compatible endpoint for operational data
    EventHubOperationsPath string
    The EventHub compatible path for operational data
    EventHubPartitionCount int
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    EventHubRetentionInDays int
    The event hub retention to use in days. Must be between 1 and 7.
    FallbackRoute IoTHubFallbackRoute

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    FileUpload IoTHubFileUpload
    A file_upload block as defined below.
    Hostname string
    The hostname of the IotHub Resource.
    Identity IoTHubIdentity
    An identity block as defined below.
    LocalAuthenticationEnabled bool
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    Location string
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    MinTlsVersion string
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    Name string
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    NetworkRuleSets List<IoTHubNetworkRuleSet>
    A network_rule_set block as defined below.
    PublicNetworkAccessEnabled bool
    Is the IotHub resource accessible from a public network?
    ResourceGroupName string
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    Routes List<IoTHubRoute>
    A route block as defined below.
    SharedAccessPolicies List<IoTHubSharedAccessPolicy>
    One or more shared_access_policy blocks as defined below.
    Sku IoTHubSku
    A sku block as defined below.
    Tags Dictionary<string, string>
    A mapping of tags to assign to the resource.
    Type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    CloudToDevice IoTHubCloudToDeviceArgs
    A cloud_to_device block as defined below.
    Endpoints []IoTHubEndpointArgs
    An endpoint block as defined below.
    Enrichments []IoTHubEnrichmentArgs
    A enrichment block as defined below.
    EventHubEventsEndpoint string
    The EventHub compatible endpoint for events data
    EventHubEventsNamespace string
    The EventHub namespace for events data
    EventHubEventsPath string
    The EventHub compatible path for events data
    EventHubOperationsEndpoint string
    The EventHub compatible endpoint for operational data
    EventHubOperationsPath string
    The EventHub compatible path for operational data
    EventHubPartitionCount int
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    EventHubRetentionInDays int
    The event hub retention to use in days. Must be between 1 and 7.
    FallbackRoute IoTHubFallbackRouteArgs

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    FileUpload IoTHubFileUploadArgs
    A file_upload block as defined below.
    Hostname string
    The hostname of the IotHub Resource.
    Identity IoTHubIdentityArgs
    An identity block as defined below.
    LocalAuthenticationEnabled bool
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    Location string
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    MinTlsVersion string
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    Name string
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    NetworkRuleSets []IoTHubNetworkRuleSetArgs
    A network_rule_set block as defined below.
    PublicNetworkAccessEnabled bool
    Is the IotHub resource accessible from a public network?
    ResourceGroupName string
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    Routes []IoTHubRouteArgs
    A route block as defined below.
    SharedAccessPolicies []IoTHubSharedAccessPolicyArgs
    One or more shared_access_policy blocks as defined below.
    Sku IoTHubSkuArgs
    A sku block as defined below.
    Tags map[string]string
    A mapping of tags to assign to the resource.
    Type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    cloudToDevice IoTHubCloudToDevice
    A cloud_to_device block as defined below.
    endpoints List<IoTHubEndpoint>
    An endpoint block as defined below.
    enrichments List<IoTHubEnrichment>
    A enrichment block as defined below.
    eventHubEventsEndpoint String
    The EventHub compatible endpoint for events data
    eventHubEventsNamespace String
    The EventHub namespace for events data
    eventHubEventsPath String
    The EventHub compatible path for events data
    eventHubOperationsEndpoint String
    The EventHub compatible endpoint for operational data
    eventHubOperationsPath String
    The EventHub compatible path for operational data
    eventHubPartitionCount Integer
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    eventHubRetentionInDays Integer
    The event hub retention to use in days. Must be between 1 and 7.
    fallbackRoute IoTHubFallbackRoute

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    fileUpload IoTHubFileUpload
    A file_upload block as defined below.
    hostname String
    The hostname of the IotHub Resource.
    identity IoTHubIdentity
    An identity block as defined below.
    localAuthenticationEnabled Boolean
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location String
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    minTlsVersion String
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name String
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    networkRuleSets List<IoTHubNetworkRuleSet>
    A network_rule_set block as defined below.
    publicNetworkAccessEnabled Boolean
    Is the IotHub resource accessible from a public network?
    resourceGroupName String
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    routes List<IoTHubRoute>
    A route block as defined below.
    sharedAccessPolicies List<IoTHubSharedAccessPolicy>
    One or more shared_access_policy blocks as defined below.
    sku IoTHubSku
    A sku block as defined below.
    tags Map<String,String>
    A mapping of tags to assign to the resource.
    type String
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    cloudToDevice IoTHubCloudToDevice
    A cloud_to_device block as defined below.
    endpoints IoTHubEndpoint[]
    An endpoint block as defined below.
    enrichments IoTHubEnrichment[]
    A enrichment block as defined below.
    eventHubEventsEndpoint string
    The EventHub compatible endpoint for events data
    eventHubEventsNamespace string
    The EventHub namespace for events data
    eventHubEventsPath string
    The EventHub compatible path for events data
    eventHubOperationsEndpoint string
    The EventHub compatible endpoint for operational data
    eventHubOperationsPath string
    The EventHub compatible path for operational data
    eventHubPartitionCount number
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    eventHubRetentionInDays number
    The event hub retention to use in days. Must be between 1 and 7.
    fallbackRoute IoTHubFallbackRoute

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    fileUpload IoTHubFileUpload
    A file_upload block as defined below.
    hostname string
    The hostname of the IotHub Resource.
    identity IoTHubIdentity
    An identity block as defined below.
    localAuthenticationEnabled boolean
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location string
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    minTlsVersion string
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name string
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    networkRuleSets IoTHubNetworkRuleSet[]
    A network_rule_set block as defined below.
    publicNetworkAccessEnabled boolean
    Is the IotHub resource accessible from a public network?
    resourceGroupName string
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    routes IoTHubRoute[]
    A route block as defined below.
    sharedAccessPolicies IoTHubSharedAccessPolicy[]
    One or more shared_access_policy blocks as defined below.
    sku IoTHubSku
    A sku block as defined below.
    tags {[key: string]: string}
    A mapping of tags to assign to the resource.
    type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    cloud_to_device IoTHubCloudToDeviceArgs
    A cloud_to_device block as defined below.
    endpoints Sequence[IoTHubEndpointArgs]
    An endpoint block as defined below.
    enrichments Sequence[IoTHubEnrichmentArgs]
    A enrichment block as defined below.
    event_hub_events_endpoint str
    The EventHub compatible endpoint for events data
    event_hub_events_namespace str
    The EventHub namespace for events data
    event_hub_events_path str
    The EventHub compatible path for events data
    event_hub_operations_endpoint str
    The EventHub compatible endpoint for operational data
    event_hub_operations_path str
    The EventHub compatible path for operational data
    event_hub_partition_count int
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    event_hub_retention_in_days int
    The event hub retention to use in days. Must be between 1 and 7.
    fallback_route IoTHubFallbackRouteArgs

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    file_upload IoTHubFileUploadArgs
    A file_upload block as defined below.
    hostname str
    The hostname of the IotHub Resource.
    identity IoTHubIdentityArgs
    An identity block as defined below.
    local_authentication_enabled bool
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location str
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    min_tls_version str
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name str
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    network_rule_sets Sequence[IoTHubNetworkRuleSetArgs]
    A network_rule_set block as defined below.
    public_network_access_enabled bool
    Is the IotHub resource accessible from a public network?
    resource_group_name str
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    routes Sequence[IoTHubRouteArgs]
    A route block as defined below.
    shared_access_policies Sequence[IoTHubSharedAccessPolicyArgs]
    One or more shared_access_policy blocks as defined below.
    sku IoTHubSkuArgs
    A sku block as defined below.
    tags Mapping[str, str]
    A mapping of tags to assign to the resource.
    type str
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    cloudToDevice Property Map
    A cloud_to_device block as defined below.
    endpoints List<Property Map>
    An endpoint block as defined below.
    enrichments List<Property Map>
    A enrichment block as defined below.
    eventHubEventsEndpoint String
    The EventHub compatible endpoint for events data
    eventHubEventsNamespace String
    The EventHub namespace for events data
    eventHubEventsPath String
    The EventHub compatible path for events data
    eventHubOperationsEndpoint String
    The EventHub compatible endpoint for operational data
    eventHubOperationsPath String
    The EventHub compatible path for operational data
    eventHubPartitionCount Number
    The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128.
    eventHubRetentionInDays Number
    The event hub retention to use in days. Must be between 1 and 7.
    fallbackRoute Property Map

    A fallback_route block as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.

    NOTE: If fallback_route isn't explicitly specified, the fallback route wouldn't be enabled by default.

    fileUpload Property Map
    A file_upload block as defined below.
    hostname String
    The hostname of the IotHub Resource.
    identity Property Map
    An identity block as defined below.
    localAuthenticationEnabled Boolean
    If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
    location String
    Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
    minTlsVersion String
    Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created.
    name String
    Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
    networkRuleSets List<Property Map>
    A network_rule_set block as defined below.
    publicNetworkAccessEnabled Boolean
    Is the IotHub resource accessible from a public network?
    resourceGroupName String
    The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.
    routes List<Property Map>
    A route block as defined below.
    sharedAccessPolicies List<Property Map>
    One or more shared_access_policy blocks as defined below.
    sku Property Map
    A sku block as defined below.
    tags Map<String>
    A mapping of tags to assign to the resource.
    type String
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.

    Supporting Types

    IoTHubCloudToDevice, IoTHubCloudToDeviceArgs

    DefaultTtl string
    The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    Feedbacks List<IoTHubCloudToDeviceFeedback>
    A feedback block as defined below.
    MaxDeliveryCount int
    The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10.
    DefaultTtl string
    The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    Feedbacks []IoTHubCloudToDeviceFeedback
    A feedback block as defined below.
    MaxDeliveryCount int
    The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10.
    defaultTtl String
    The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    feedbacks List<IoTHubCloudToDeviceFeedback>
    A feedback block as defined below.
    maxDeliveryCount Integer
    The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10.
    defaultTtl string
    The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    feedbacks IoTHubCloudToDeviceFeedback[]
    A feedback block as defined below.
    maxDeliveryCount number
    The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10.
    default_ttl str
    The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    feedbacks Sequence[IoTHubCloudToDeviceFeedback]
    A feedback block as defined below.
    max_delivery_count int
    The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10.
    defaultTtl String
    The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    feedbacks List<Property Map>
    A feedback block as defined below.
    maxDeliveryCount Number
    The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10.

    IoTHubCloudToDeviceFeedback, IoTHubCloudToDeviceFeedbackArgs

    LockDuration string
    The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
    MaxDeliveryCount int
    The maximum delivery count for the feedback queue. This value must be between 1 and 100. Defaults to 10.
    TimeToLive string
    The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    LockDuration string
    The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
    MaxDeliveryCount int
    The maximum delivery count for the feedback queue. This value must be between 1 and 100. Defaults to 10.
    TimeToLive string
    The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    lockDuration String
    The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
    maxDeliveryCount Integer
    The maximum delivery count for the feedback queue. This value must be between 1 and 100. Defaults to 10.
    timeToLive String
    The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    lockDuration string
    The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
    maxDeliveryCount number
    The maximum delivery count for the feedback queue. This value must be between 1 and 100. Defaults to 10.
    timeToLive string
    The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    lock_duration str
    The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
    max_delivery_count int
    The maximum delivery count for the feedback queue. This value must be between 1 and 100. Defaults to 10.
    time_to_live str
    The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    lockDuration String
    The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
    maxDeliveryCount Number
    The maximum delivery count for the feedback queue. This value must be between 1 and 100. Defaults to 10.
    timeToLive String
    The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.

    IoTHubEndpoint, IoTHubEndpointArgs

    Name string
    The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events, operationsMonitoringEvents, fileNotifications and $default.
    Type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    AuthenticationType string
    The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased.
    BatchFrequencyInSeconds int
    Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    ConnectionString string
    The connection string for the endpoint. This attribute is mandatory and can only be specified when authentication_type is keyBased.
    ContainerName string
    The name of storage container in the storage account. This attribute is mandatory for endpoint type AzureIotHub.StorageContainer.
    Encoding string
    Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Changing this forces a new resource to be created.
    EndpointUri string
    URI of the Service Bus or Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    EntityPath string
    Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    FileNameFormat string
    File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
    IdentityId string

    The ID of the User Managed Identity used to authenticate against the endpoint.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for endpoint since it is not possible to grant access to the endpoint until after creation. The extracted resources azurerm_iothub_endpoint_* can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.

    MaxChunkSizeInBytes int
    Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    ResourceGroupName string
    The resource group in which the endpoint will be created.
    Name string
    The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events, operationsMonitoringEvents, fileNotifications and $default.
    Type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    AuthenticationType string
    The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased.
    BatchFrequencyInSeconds int
    Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    ConnectionString string
    The connection string for the endpoint. This attribute is mandatory and can only be specified when authentication_type is keyBased.
    ContainerName string
    The name of storage container in the storage account. This attribute is mandatory for endpoint type AzureIotHub.StorageContainer.
    Encoding string
    Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Changing this forces a new resource to be created.
    EndpointUri string
    URI of the Service Bus or Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    EntityPath string
    Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    FileNameFormat string
    File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
    IdentityId string

    The ID of the User Managed Identity used to authenticate against the endpoint.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for endpoint since it is not possible to grant access to the endpoint until after creation. The extracted resources azurerm_iothub_endpoint_* can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.

    MaxChunkSizeInBytes int
    Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    ResourceGroupName string
    The resource group in which the endpoint will be created.
    name String
    The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events, operationsMonitoringEvents, fileNotifications and $default.
    type String
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    authenticationType String
    The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased.
    batchFrequencyInSeconds Integer
    Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    connectionString String
    The connection string for the endpoint. This attribute is mandatory and can only be specified when authentication_type is keyBased.
    containerName String
    The name of storage container in the storage account. This attribute is mandatory for endpoint type AzureIotHub.StorageContainer.
    encoding String
    Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Changing this forces a new resource to be created.
    endpointUri String
    URI of the Service Bus or Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    entityPath String
    Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    fileNameFormat String
    File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
    identityId String

    The ID of the User Managed Identity used to authenticate against the endpoint.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for endpoint since it is not possible to grant access to the endpoint until after creation. The extracted resources azurerm_iothub_endpoint_* can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.

    maxChunkSizeInBytes Integer
    Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    resourceGroupName String
    The resource group in which the endpoint will be created.
    name string
    The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events, operationsMonitoringEvents, fileNotifications and $default.
    type string
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    authenticationType string
    The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased.
    batchFrequencyInSeconds number
    Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    connectionString string
    The connection string for the endpoint. This attribute is mandatory and can only be specified when authentication_type is keyBased.
    containerName string
    The name of storage container in the storage account. This attribute is mandatory for endpoint type AzureIotHub.StorageContainer.
    encoding string
    Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Changing this forces a new resource to be created.
    endpointUri string
    URI of the Service Bus or Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    entityPath string
    Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    fileNameFormat string
    File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
    identityId string

    The ID of the User Managed Identity used to authenticate against the endpoint.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for endpoint since it is not possible to grant access to the endpoint until after creation. The extracted resources azurerm_iothub_endpoint_* can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.

    maxChunkSizeInBytes number
    Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    resourceGroupName string
    The resource group in which the endpoint will be created.
    name str
    The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events, operationsMonitoringEvents, fileNotifications and $default.
    type str
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    authentication_type str
    The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased.
    batch_frequency_in_seconds int
    Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    connection_string str
    The connection string for the endpoint. This attribute is mandatory and can only be specified when authentication_type is keyBased.
    container_name str
    The name of storage container in the storage account. This attribute is mandatory for endpoint type AzureIotHub.StorageContainer.
    encoding str
    Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Changing this forces a new resource to be created.
    endpoint_uri str
    URI of the Service Bus or Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    entity_path str
    Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    file_name_format str
    File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
    identity_id str

    The ID of the User Managed Identity used to authenticate against the endpoint.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for endpoint since it is not possible to grant access to the endpoint until after creation. The extracted resources azurerm_iothub_endpoint_* can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.

    max_chunk_size_in_bytes int
    Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    resource_group_name str
    The resource group in which the endpoint will be created.
    name String
    The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events, operationsMonitoringEvents, fileNotifications and $default.
    type String
    The type of the endpoint. Possible values are AzureIotHub.StorageContainer, AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    authenticationType String
    The type used to authenticate against the endpoint. Possible values are keyBased and identityBased. Defaults to keyBased.
    batchFrequencyInSeconds Number
    Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    connectionString String
    The connection string for the endpoint. This attribute is mandatory and can only be specified when authentication_type is keyBased.
    containerName String
    The name of storage container in the storage account. This attribute is mandatory for endpoint type AzureIotHub.StorageContainer.
    encoding String
    Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Changing this forces a new resource to be created.
    endpointUri String
    URI of the Service Bus or Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    entityPath String
    Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased for endpoint type AzureIotHub.ServiceBusQueue, AzureIotHub.ServiceBusTopic or AzureIotHub.EventHub.
    fileNameFormat String
    File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
    identityId String

    The ID of the User Managed Identity used to authenticate against the endpoint.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for endpoint since it is not possible to grant access to the endpoint until after creation. The extracted resources azurerm_iothub_endpoint_* can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.

    maxChunkSizeInBytes Number
    Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    resourceGroupName String
    The resource group in which the endpoint will be created.

    IoTHubEnrichment, IoTHubEnrichmentArgs

    EndpointNames List<string>
    The list of endpoints which will be enriched.
    Key string
    The key of the enrichment.
    Value string
    The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude)
    EndpointNames []string
    The list of endpoints which will be enriched.
    Key string
    The key of the enrichment.
    Value string
    The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude)
    endpointNames List<String>
    The list of endpoints which will be enriched.
    key String
    The key of the enrichment.
    value String
    The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude)
    endpointNames string[]
    The list of endpoints which will be enriched.
    key string
    The key of the enrichment.
    value string
    The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude)
    endpoint_names Sequence[str]
    The list of endpoints which will be enriched.
    key str
    The key of the enrichment.
    value str
    The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude)
    endpointNames List<String>
    The list of endpoints which will be enriched.
    key String
    The key of the enrichment.
    value String
    The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude)

    IoTHubFallbackRoute, IoTHubFallbackRouteArgs

    Condition string
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    Enabled bool
    Used to specify whether the fallback route is enabled.
    EndpointNames List<string>
    The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed.
    Source string
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents. Defaults to DeviceMessages.
    Condition string
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    Enabled bool
    Used to specify whether the fallback route is enabled.
    EndpointNames []string
    The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed.
    Source string
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents. Defaults to DeviceMessages.
    condition String
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled Boolean
    Used to specify whether the fallback route is enabled.
    endpointNames List<String>
    The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed.
    source String
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents. Defaults to DeviceMessages.
    condition string
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled boolean
    Used to specify whether the fallback route is enabled.
    endpointNames string[]
    The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed.
    source string
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents. Defaults to DeviceMessages.
    condition str
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled bool
    Used to specify whether the fallback route is enabled.
    endpoint_names Sequence[str]
    The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed.
    source str
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents. Defaults to DeviceMessages.
    condition String
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled Boolean
    Used to specify whether the fallback route is enabled.
    endpointNames List<String>
    The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed.
    source String
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents. Defaults to DeviceMessages.

    IoTHubFileUpload, IoTHubFileUploadArgs

    ConnectionString string
    The connection string for the Azure Storage account to which files are uploaded.
    ContainerName string
    The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
    AuthenticationType string
    The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased.
    DefaultTtl string
    The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    IdentityId string

    The ID of the User Managed Identity used to authenticate against the storage account.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for file_upload since it is not possible to grant access to the endpoint until after creation.

    LockDuration string
    The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
    MaxDeliveryCount int
    The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
    Notifications bool
    Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
    SasTtl string
    The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
    ConnectionString string
    The connection string for the Azure Storage account to which files are uploaded.
    ContainerName string
    The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
    AuthenticationType string
    The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased.
    DefaultTtl string
    The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    IdentityId string

    The ID of the User Managed Identity used to authenticate against the storage account.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for file_upload since it is not possible to grant access to the endpoint until after creation.

    LockDuration string
    The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
    MaxDeliveryCount int
    The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
    Notifications bool
    Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
    SasTtl string
    The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
    connectionString String
    The connection string for the Azure Storage account to which files are uploaded.
    containerName String
    The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
    authenticationType String
    The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased.
    defaultTtl String
    The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    identityId String

    The ID of the User Managed Identity used to authenticate against the storage account.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for file_upload since it is not possible to grant access to the endpoint until after creation.

    lockDuration String
    The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
    maxDeliveryCount Integer
    The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
    notifications Boolean
    Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
    sasTtl String
    The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
    connectionString string
    The connection string for the Azure Storage account to which files are uploaded.
    containerName string
    The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
    authenticationType string
    The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased.
    defaultTtl string
    The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    identityId string

    The ID of the User Managed Identity used to authenticate against the storage account.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for file_upload since it is not possible to grant access to the endpoint until after creation.

    lockDuration string
    The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
    maxDeliveryCount number
    The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
    notifications boolean
    Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
    sasTtl string
    The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
    connection_string str
    The connection string for the Azure Storage account to which files are uploaded.
    container_name str
    The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
    authentication_type str
    The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased.
    default_ttl str
    The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    identity_id str

    The ID of the User Managed Identity used to authenticate against the storage account.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for file_upload since it is not possible to grant access to the endpoint until after creation.

    lock_duration str
    The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
    max_delivery_count int
    The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
    notifications bool
    Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
    sas_ttl str
    The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
    connectionString String
    The connection string for the Azure Storage account to which files are uploaded.
    containerName String
    The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
    authenticationType String
    The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased.
    defaultTtl String
    The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
    identityId String

    The ID of the User Managed Identity used to authenticate against the storage account.

    NOTE: identity_id can only be specified when authentication_type is identityBased. It must be one of the identity_ids of the IoT Hub. If identity_id is omitted when authentication_type is identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.

    NOTE: An IoT Hub can only be updated to use the System-Assigned Managed Identity for file_upload since it is not possible to grant access to the endpoint until after creation.

    lockDuration String
    The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
    maxDeliveryCount Number
    The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
    notifications Boolean
    Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
    sasTtl String
    The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.

    IoTHubIdentity, IoTHubIdentityArgs

    Type string
    Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
    IdentityIds List<string>

    Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub.

    NOTE: This is required when type is set to UserAssigned or SystemAssigned, UserAssigned.

    PrincipalId string
    The Principal ID associated with this Managed Service Identity.
    TenantId string
    The Tenant ID associated with this Managed Service Identity.
    Type string
    Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
    IdentityIds []string

    Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub.

    NOTE: This is required when type is set to UserAssigned or SystemAssigned, UserAssigned.

    PrincipalId string
    The Principal ID associated with this Managed Service Identity.
    TenantId string
    The Tenant ID associated with this Managed Service Identity.
    type String
    Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
    identityIds List<String>

    Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub.

    NOTE: This is required when type is set to UserAssigned or SystemAssigned, UserAssigned.

    principalId String
    The Principal ID associated with this Managed Service Identity.
    tenantId String
    The Tenant ID associated with this Managed Service Identity.
    type string
    Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
    identityIds string[]

    Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub.

    NOTE: This is required when type is set to UserAssigned or SystemAssigned, UserAssigned.

    principalId string
    The Principal ID associated with this Managed Service Identity.
    tenantId string
    The Tenant ID associated with this Managed Service Identity.
    type str
    Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
    identity_ids Sequence[str]

    Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub.

    NOTE: This is required when type is set to UserAssigned or SystemAssigned, UserAssigned.

    principal_id str
    The Principal ID associated with this Managed Service Identity.
    tenant_id str
    The Tenant ID associated with this Managed Service Identity.
    type String
    Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both).
    identityIds List<String>

    Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub.

    NOTE: This is required when type is set to UserAssigned or SystemAssigned, UserAssigned.

    principalId String
    The Principal ID associated with this Managed Service Identity.
    tenantId String
    The Tenant ID associated with this Managed Service Identity.

    IoTHubNetworkRuleSet, IoTHubNetworkRuleSetArgs

    ApplyToBuiltinEventhubEndpoint bool
    Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false.
    DefaultAction string
    Default Action for Network Rule Set. Possible values are DefaultActionDeny, DefaultActionAllow. Defaults to DefaultActionDeny.
    IpRules List<IoTHubNetworkRuleSetIpRule>
    One or more ip_rule blocks as defined below.
    ApplyToBuiltinEventhubEndpoint bool
    Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false.
    DefaultAction string
    Default Action for Network Rule Set. Possible values are DefaultActionDeny, DefaultActionAllow. Defaults to DefaultActionDeny.
    IpRules []IoTHubNetworkRuleSetIpRule
    One or more ip_rule blocks as defined below.
    applyToBuiltinEventhubEndpoint Boolean
    Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false.
    defaultAction String
    Default Action for Network Rule Set. Possible values are DefaultActionDeny, DefaultActionAllow. Defaults to DefaultActionDeny.
    ipRules List<IoTHubNetworkRuleSetIpRule>
    One or more ip_rule blocks as defined below.
    applyToBuiltinEventhubEndpoint boolean
    Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false.
    defaultAction string
    Default Action for Network Rule Set. Possible values are DefaultActionDeny, DefaultActionAllow. Defaults to DefaultActionDeny.
    ipRules IoTHubNetworkRuleSetIpRule[]
    One or more ip_rule blocks as defined below.
    apply_to_builtin_eventhub_endpoint bool
    Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false.
    default_action str
    Default Action for Network Rule Set. Possible values are DefaultActionDeny, DefaultActionAllow. Defaults to DefaultActionDeny.
    ip_rules Sequence[IoTHubNetworkRuleSetIpRule]
    One or more ip_rule blocks as defined below.
    applyToBuiltinEventhubEndpoint Boolean
    Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false.
    defaultAction String
    Default Action for Network Rule Set. Possible values are DefaultActionDeny, DefaultActionAllow. Defaults to DefaultActionDeny.
    ipRules List<Property Map>
    One or more ip_rule blocks as defined below.

    IoTHubNetworkRuleSetIpRule, IoTHubNetworkRuleSetIpRuleArgs

    IpMask string
    The IP address range in CIDR notation for the ip rule.
    Name string
    The name of the ip rule.
    Action string
    The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow.
    IpMask string
    The IP address range in CIDR notation for the ip rule.
    Name string
    The name of the ip rule.
    Action string
    The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow.
    ipMask String
    The IP address range in CIDR notation for the ip rule.
    name String
    The name of the ip rule.
    action String
    The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow.
    ipMask string
    The IP address range in CIDR notation for the ip rule.
    name string
    The name of the ip rule.
    action string
    The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow.
    ip_mask str
    The IP address range in CIDR notation for the ip rule.
    name str
    The name of the ip rule.
    action str
    The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow.
    ipMask String
    The IP address range in CIDR notation for the ip rule.
    name String
    The name of the ip rule.
    action String
    The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow.

    IoTHubRoute, IoTHubRouteArgs

    Enabled bool
    Used to specify whether a route is enabled.
    EndpointNames List<string>
    The list of endpoints to which messages that satisfy the condition are routed.
    Name string
    The name of the route.
    Source string
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents.
    Condition string
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    Enabled bool
    Used to specify whether a route is enabled.
    EndpointNames []string
    The list of endpoints to which messages that satisfy the condition are routed.
    Name string
    The name of the route.
    Source string
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents.
    Condition string
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled Boolean
    Used to specify whether a route is enabled.
    endpointNames List<String>
    The list of endpoints to which messages that satisfy the condition are routed.
    name String
    The name of the route.
    source String
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents.
    condition String
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled boolean
    Used to specify whether a route is enabled.
    endpointNames string[]
    The list of endpoints to which messages that satisfy the condition are routed.
    name string
    The name of the route.
    source string
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents.
    condition string
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled bool
    Used to specify whether a route is enabled.
    endpoint_names Sequence[str]
    The list of endpoints to which messages that satisfy the condition are routed.
    name str
    The name of the route.
    source str
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents.
    condition str
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
    enabled Boolean
    Used to specify whether a route is enabled.
    endpointNames List<String>
    The list of endpoints to which messages that satisfy the condition are routed.
    name String
    The name of the route.
    source String
    The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include: Invalid, DeviceMessages, TwinChangeEvents, DeviceLifecycleEvents, DeviceConnectionStateEvents, DeviceJobLifecycleEvents and DigitalTwinChangeEvents.
    condition String
    The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.

    IoTHubSharedAccessPolicy, IoTHubSharedAccessPolicyArgs

    KeyName string
    The name of the shared access policy.
    Permissions string
    The permissions assigned to the shared access policy.
    PrimaryKey string
    The primary key.
    SecondaryKey string
    The secondary key.
    KeyName string
    The name of the shared access policy.
    Permissions string
    The permissions assigned to the shared access policy.
    PrimaryKey string
    The primary key.
    SecondaryKey string
    The secondary key.
    keyName String
    The name of the shared access policy.
    permissions String
    The permissions assigned to the shared access policy.
    primaryKey String
    The primary key.
    secondaryKey String
    The secondary key.
    keyName string
    The name of the shared access policy.
    permissions string
    The permissions assigned to the shared access policy.
    primaryKey string
    The primary key.
    secondaryKey string
    The secondary key.
    key_name str
    The name of the shared access policy.
    permissions str
    The permissions assigned to the shared access policy.
    primary_key str
    The primary key.
    secondary_key str
    The secondary key.
    keyName String
    The name of the shared access policy.
    permissions String
    The permissions assigned to the shared access policy.
    primaryKey String
    The primary key.
    secondaryKey String
    The secondary key.

    IoTHubSku, IoTHubSkuArgs

    Capacity int

    The number of provisioned IoT Hub units.

    NOTE: Only one IotHub can be on the Free tier per subscription.

    Name string

    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    NOTE: The F1 sku is on Free tier.

    Capacity int

    The number of provisioned IoT Hub units.

    NOTE: Only one IotHub can be on the Free tier per subscription.

    Name string

    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    NOTE: The F1 sku is on Free tier.

    capacity Integer

    The number of provisioned IoT Hub units.

    NOTE: Only one IotHub can be on the Free tier per subscription.

    name String

    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    NOTE: The F1 sku is on Free tier.

    capacity number

    The number of provisioned IoT Hub units.

    NOTE: Only one IotHub can be on the Free tier per subscription.

    name string

    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    NOTE: The F1 sku is on Free tier.

    capacity int

    The number of provisioned IoT Hub units.

    NOTE: Only one IotHub can be on the Free tier per subscription.

    name str

    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    NOTE: The F1 sku is on Free tier.

    capacity Number

    The number of provisioned IoT Hub units.

    NOTE: Only one IotHub can be on the Free tier per subscription.

    name String

    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    NOTE: The F1 sku is on Free tier.

    Import

    IoTHubs can be imported using the resource id, e.g.

    $ pulumi import azure:iot/ioTHub:IoTHub hub1 /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/mygroup1/providers/Microsoft.Devices/iotHubs/hub1
    

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

    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 Classic v5.72.0 published on Monday, Apr 15, 2024 by Pulumi