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

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
azure logo

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 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.

    Example Usage

    using Pulumi;
    using Azure = Pulumi.Azure;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new Azure.Core.ResourceGroupArgs
            {
                Location = "West Europe",
            });
            var exampleAccount = new Azure.Storage.Account("exampleAccount", new Azure.Storage.AccountArgs
            {
                ResourceGroupName = exampleResourceGroup.Name,
                Location = exampleResourceGroup.Location,
                AccountTier = "Standard",
                AccountReplicationType = "LRS",
            });
            var exampleContainer = new Azure.Storage.Container("exampleContainer", new Azure.Storage.ContainerArgs
            {
                StorageAccountName = exampleAccount.Name,
                ContainerAccessType = "private",
            });
            var exampleEventHubNamespace = new Azure.EventHub.EventHubNamespace("exampleEventHubNamespace", new Azure.EventHub.EventHubNamespaceArgs
            {
                ResourceGroupName = exampleResourceGroup.Name,
                Location = exampleResourceGroup.Location,
                Sku = "Basic",
            });
            var exampleEventHub = new Azure.EventHub.EventHub("exampleEventHub", new Azure.EventHub.EventHubArgs
            {
                ResourceGroupName = exampleResourceGroup.Name,
                NamespaceName = exampleEventHubNamespace.Name,
                PartitionCount = 2,
                MessageRetention = 1,
            });
            var exampleAuthorizationRule = new Azure.EventHub.AuthorizationRule("exampleAuthorizationRule", new Azure.EventHub.AuthorizationRuleArgs
            {
                ResourceGroupName = exampleResourceGroup.Name,
                NamespaceName = exampleEventHubNamespace.Name,
                EventhubName = exampleEventHub.Name,
                Send = true,
            });
            var exampleIoTHub = new Azure.Iot.IoTHub("exampleIoTHub", new Azure.Iot.IoTHubArgs
            {
                ResourceGroupName = exampleResourceGroup.Name,
                Location = exampleResourceGroup.Location,
                Sku = new Azure.Iot.Inputs.IoTHubSkuArgs
                {
                    Name = "S1",
                    Capacity = 1,
                },
                Endpoints = 
                {
                    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 Azure.Iot.Inputs.IoTHubRouteArgs
                    {
                        Name = "export",
                        Source = "DeviceMessages",
                        Condition = "true",
                        EndpointNames = 
                        {
                            "export",
                        },
                        Enabled = true,
                    },
                    new Azure.Iot.Inputs.IoTHubRouteArgs
                    {
                        Name = "export2",
                        Source = "DeviceMessages",
                        Condition = "true",
                        EndpointNames = 
                        {
                            "export2",
                        },
                        Enabled = true,
                    },
                },
                Enrichments = 
                {
                    new Azure.Iot.Inputs.IoTHubEnrichmentArgs
                    {
                        Key = "tenant",
                        Value = "$twin.tags.Tenant",
                        EndpointNames = 
                        {
                            "export",
                            "export2",
                        },
                    },
                },
                CloudToDevice = new Azure.Iot.Inputs.IoTHubCloudToDeviceArgs
                {
                    MaxDeliveryCount = 30,
                    DefaultTtl = "PT1H",
                    Feedbacks = 
                    {
                        new Azure.Iot.Inputs.IoTHubCloudToDeviceFeedbackArgs
                        {
                            TimeToLive = "PT1H10M",
                            MaxDeliveryCount = 15,
                            LockDuration = "PT30S",
                        },
                    },
                },
                Tags = 
                {
                    { "purpose", "testing" },
                },
            });
        }
    
    }
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/eventhub"
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/iot"
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/storage"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
    			Location: pulumi.String("West Europe"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAccount, err := storage.NewAccount(ctx, "exampleAccount", &storage.AccountArgs{
    			ResourceGroupName:      exampleResourceGroup.Name,
    			Location:               exampleResourceGroup.Location,
    			AccountTier:            pulumi.String("Standard"),
    			AccountReplicationType: pulumi.String("LRS"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleContainer, err := storage.NewContainer(ctx, "exampleContainer", &storage.ContainerArgs{
    			StorageAccountName:  exampleAccount.Name,
    			ContainerAccessType: pulumi.String("private"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleEventHubNamespace, err := eventhub.NewEventHubNamespace(ctx, "exampleEventHubNamespace", &eventhub.EventHubNamespaceArgs{
    			ResourceGroupName: exampleResourceGroup.Name,
    			Location:          exampleResourceGroup.Location,
    			Sku:               pulumi.String("Basic"),
    		})
    		if err != nil {
    			return err
    		}
    		exampleEventHub, err := eventhub.NewEventHub(ctx, "exampleEventHub", &eventhub.EventHubArgs{
    			ResourceGroupName: exampleResourceGroup.Name,
    			NamespaceName:     exampleEventHubNamespace.Name,
    			PartitionCount:    pulumi.Int(2),
    			MessageRetention:  pulumi.Int(1),
    		})
    		if err != nil {
    			return err
    		}
    		exampleAuthorizationRule, err := eventhub.NewAuthorizationRule(ctx, "exampleAuthorizationRule", &eventhub.AuthorizationRuleArgs{
    			ResourceGroupName: exampleResourceGroup.Name,
    			NamespaceName:     exampleEventHubNamespace.Name,
    			EventhubName:      exampleEventHub.Name,
    			Send:              pulumi.Bool(true),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = iot.NewIoTHub(ctx, "exampleIoTHub", &iot.IoTHubArgs{
    			ResourceGroupName: exampleResourceGroup.Name,
    			Location:          exampleResourceGroup.Location,
    			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(fmt.Sprintf("%v%v", "$", "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
    	})
    }
    

    Example coming soon!

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
    const exampleAccount = new azure.storage.Account("exampleAccount", {
        resourceGroupName: exampleResourceGroup.name,
        location: exampleResourceGroup.location,
        accountTier: "Standard",
        accountReplicationType: "LRS",
    });
    const exampleContainer = new azure.storage.Container("exampleContainer", {
        storageAccountName: exampleAccount.name,
        containerAccessType: "private",
    });
    const exampleEventHubNamespace = new azure.eventhub.EventHubNamespace("exampleEventHubNamespace", {
        resourceGroupName: exampleResourceGroup.name,
        location: exampleResourceGroup.location,
        sku: "Basic",
    });
    const exampleEventHub = new azure.eventhub.EventHub("exampleEventHub", {
        resourceGroupName: exampleResourceGroup.name,
        namespaceName: exampleEventHubNamespace.name,
        partitionCount: 2,
        messageRetention: 1,
    });
    const exampleAuthorizationRule = new azure.eventhub.AuthorizationRule("exampleAuthorizationRule", {
        resourceGroupName: exampleResourceGroup.name,
        namespaceName: exampleEventHubNamespace.name,
        eventhubName: exampleEventHub.name,
        send: true,
    });
    const exampleIoTHub = new azure.iot.IoTHub("exampleIoTHub", {
        resourceGroupName: exampleResourceGroup.name,
        location: exampleResourceGroup.location,
        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_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
    example_account = azure.storage.Account("exampleAccount",
        resource_group_name=example_resource_group.name,
        location=example_resource_group.location,
        account_tier="Standard",
        account_replication_type="LRS")
    example_container = azure.storage.Container("exampleContainer",
        storage_account_name=example_account.name,
        container_access_type="private")
    example_event_hub_namespace = azure.eventhub.EventHubNamespace("exampleEventHubNamespace",
        resource_group_name=example_resource_group.name,
        location=example_resource_group.location,
        sku="Basic")
    example_event_hub = azure.eventhub.EventHub("exampleEventHub",
        resource_group_name=example_resource_group.name,
        namespace_name=example_event_hub_namespace.name,
        partition_count=2,
        message_retention=1)
    example_authorization_rule = azure.eventhub.AuthorizationRule("exampleAuthorizationRule",
        resource_group_name=example_resource_group.name,
        namespace_name=example_event_hub_namespace.name,
        eventhub_name=example_event_hub.name,
        send=True)
    example_io_t_hub = azure.iot.IoTHub("exampleIoTHub",
        resource_group_name=example_resource_group.name,
        location=example_resource_group.location,
        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",
        })
    

    Example coming soon!

    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,
               ip_filter_rules: Optional[Sequence[IoTHubIpFilterRuleArgs]] = 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.

    Constructor 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",
        },
        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",
            DefaultTtl = "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"),
    	},
    	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"),
    		DefaultTtl:       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())
        .location("string")
        .eventHubRetentionInDays(0)
        .fallbackRoute(IoTHubFallbackRouteArgs.builder()
            .condition("string")
            .enabled(false)
            .endpointNames("string")
            .source("string")
            .build())
        .fileUpload(IoTHubFileUploadArgs.builder()
            .connectionString("string")
            .containerName("string")
            .defaultTtl("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={
            "capacity": 0,
            "name": "string",
        },
        location="string",
        event_hub_retention_in_days=0,
        fallback_route={
            "condition": "string",
            "enabled": False,
            "endpoint_names": ["string"],
            "source": "string",
        },
        file_upload={
            "connection_string": "string",
            "container_name": "string",
            "default_ttl": "string",
            "lock_duration": "string",
            "max_delivery_count": 0,
            "notifications": False,
            "sas_ttl": "string",
        },
        identity={
            "type": "string",
            "identity_ids": ["string"],
            "principal_id": "string",
            "tenant_id": "string",
        },
        cloud_to_device={
            "default_ttl": "string",
            "feedbacks": [{
                "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=[{
            "apply_to_builtin_eventhub_endpoint": False,
            "default_action": "string",
            "ip_rules": [{
                "ip_mask": "string",
                "name": "string",
                "action": "string",
            }],
        }],
        public_network_access_enabled=False,
        enrichments=[{
            "endpoint_names": ["string"],
            "key": "string",
            "value": "string",
        }],
        routes=[{
            "enabled": False,
            "endpoint_names": ["string"],
            "name": "string",
            "source": "string",
            "condition": "string",
        }],
        endpoints=[{
            "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",
        },
        location: "string",
        eventHubRetentionInDays: 0,
        fallbackRoute: {
            condition: "string",
            enabled: false,
            endpointNames: ["string"],
            source: "string",
        },
        fileUpload: {
            connectionString: "string",
            containerName: "string",
            defaultTtl: "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:
            connectionString: string
            containerName: string
            defaultTtl: string
            lockDuration: string
            maxDeliveryCount: 0
            notifications: false
            sasTtl: string
        identity:
            identityIds:
                - string
            principalId: string
            tenantId: string
            type: string
        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

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    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.
    FileUpload IoTHubFileUpload
    A file_upload block as defined below.
    Identity IoTHubIdentity
    An identity block as defined below.
    IpFilterRules List<IoTHubIpFilterRule>
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    FileUpload IoTHubFileUploadArgs
    A file_upload block as defined below.
    Identity IoTHubIdentityArgs
    An identity block as defined below.
    IpFilterRules []IoTHubIpFilterRuleArgs
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    fileUpload IoTHubFileUpload
    A file_upload block as defined below.
    identity IoTHubIdentity
    An identity block as defined below.
    ipFilterRules List<IoTHubIpFilterRule>
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    fileUpload IoTHubFileUpload
    A file_upload block as defined below.
    identity IoTHubIdentity
    An identity block as defined below.
    ipFilterRules IoTHubIpFilterRule[]
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    file_upload IoTHubFileUploadArgs
    A file_upload block as defined below.
    identity IoTHubIdentityArgs
    An identity block as defined below.
    ip_filter_rules Sequence[IoTHubIpFilterRuleArgs]
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    fileUpload Property Map
    A file_upload block as defined below.
    identity Property Map
    An identity block as defined below.
    ipFilterRules List<Property Map>
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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,
            ip_filter_rules: Optional[Sequence[IoTHubIpFilterRuleArgs]] = 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)
    resources:  _:    type: azure:iot:IoTHub    get:      id: ${id}
    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.
    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.
    IpFilterRules List<IoTHubIpFilterRule>
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    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.
    IpFilterRules []IoTHubIpFilterRuleArgs
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    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.
    ipFilterRules List<IoTHubIpFilterRule>
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    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.
    ipFilterRules IoTHubIpFilterRule[]
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    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.
    ip_filter_rules Sequence[IoTHubIpFilterRuleArgs]
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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.
    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.
    ipFilterRules List<Property Map>
    One or more ip_filter_rule blocks as defined below.

    Deprecated: This property block is deprecated in favour of network_rule_set and will be removed in version 3.0 of the provider.

    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, and evaluates to PT1H by default.
    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, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to 10 by default.

    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, and evaluates to PT60S by default.
    MaxDeliveryCount int
    The maximum delivery count for the feedback queue. This value must be between 1 and 100, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to PT60S by default.
    MaxDeliveryCount int
    The maximum delivery count for the feedback queue. This value must be between 1 and 100, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to PT60S by default.
    maxDeliveryCount Integer
    The maximum delivery count for the feedback queue. This value must be between 1 and 100, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to PT60S by default.
    maxDeliveryCount number
    The maximum delivery count for the feedback queue. This value must be between 1 and 100, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to PT60S by default.
    max_delivery_count int
    The maximum delivery count for the feedback queue. This value must be between 1 and 100, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.
    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, and evaluates to PT60S by default.
    maxDeliveryCount Number
    The maximum delivery count for the feedback queue. This value must be between 1 and 100, and evaluates to 10 by default.
    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, and evaluates to PT1H by default.

    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
    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. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    IdentityId string
    ID of the User Managed Identity used to authenticate against the endpoint.
    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
    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. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    IdentityId string
    ID of the User Managed Identity used to authenticate against the endpoint.
    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
    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. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    identityId String
    ID of the User Managed Identity used to authenticate against the endpoint.
    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
    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. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    identityId string
    ID of the User Managed Identity used to authenticate against the endpoint.
    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
    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. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    identity_id str
    ID of the User Managed Identity used to authenticate against the endpoint.
    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
    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. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer.
    identityId String
    ID of the User Managed Identity used to authenticate against the endpoint.
    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. If no condition is provided, it evaluates to true by default. 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.
    Condition string
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition String
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition string
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition str
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition String
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.

    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 you upload files. The container need not exist but should be creatable using the connection_string specified.
    DefaultTtl string
    The period of time for which a file upload notification message is available to consume before it is expired by the IoT hub, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours, and evaluates to PT1H by default.
    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, and evaluates to PT1M by default.
    MaxDeliveryCount int
    The number of times the IoT hub attempts to deliver a file upload notification message. It evaluates to 10 by default.
    Notifications bool
    Used to specify whether file notifications are sent to IoT Hub on upload. It evaluates to false by default.
    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, and evaluates to PT1H by default.
    ConnectionString string
    The connection string for the Azure Storage account to which files are uploaded.
    ContainerName string
    The name of the root container where you upload files. The container need not exist but should be creatable using the connection_string specified.
    DefaultTtl string
    The period of time for which a file upload notification message is available to consume before it is expired by the IoT hub, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours, and evaluates to PT1H by default.
    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, and evaluates to PT1M by default.
    MaxDeliveryCount int
    The number of times the IoT hub attempts to deliver a file upload notification message. It evaluates to 10 by default.
    Notifications bool
    Used to specify whether file notifications are sent to IoT Hub on upload. It evaluates to false by default.
    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, and evaluates to PT1H by default.
    connectionString String
    The connection string for the Azure Storage account to which files are uploaded.
    containerName String
    The name of the root container where you upload files. The container need not exist but should be creatable using the connection_string specified.
    defaultTtl String
    The period of time for which a file upload notification message is available to consume before it is expired by the IoT hub, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours, and evaluates to PT1H by default.
    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, and evaluates to PT1M by default.
    maxDeliveryCount Integer
    The number of times the IoT hub attempts to deliver a file upload notification message. It evaluates to 10 by default.
    notifications Boolean
    Used to specify whether file notifications are sent to IoT Hub on upload. It evaluates to false by default.
    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, and evaluates to PT1H by default.
    connectionString string
    The connection string for the Azure Storage account to which files are uploaded.
    containerName string
    The name of the root container where you upload files. The container need not exist but should be creatable using the connection_string specified.
    defaultTtl string
    The period of time for which a file upload notification message is available to consume before it is expired by the IoT hub, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours, and evaluates to PT1H by default.
    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, and evaluates to PT1M by default.
    maxDeliveryCount number
    The number of times the IoT hub attempts to deliver a file upload notification message. It evaluates to 10 by default.
    notifications boolean
    Used to specify whether file notifications are sent to IoT Hub on upload. It evaluates to false by default.
    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, and evaluates to PT1H by default.
    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 you upload files. The container need not exist but should be creatable using the connection_string specified.
    default_ttl str
    The period of time for which a file upload notification message is available to consume before it is expired by the IoT hub, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours, and evaluates to PT1H by default.
    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, and evaluates to PT1M by default.
    max_delivery_count int
    The number of times the IoT hub attempts to deliver a file upload notification message. It evaluates to 10 by default.
    notifications bool
    Used to specify whether file notifications are sent to IoT Hub on upload. It evaluates to false by default.
    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, and evaluates to PT1H by default.
    connectionString String
    The connection string for the Azure Storage account to which files are uploaded.
    containerName String
    The name of the root container where you upload files. The container need not exist but should be creatable using the connection_string specified.
    defaultTtl String
    The period of time for which a file upload notification message is available to consume before it is expired by the IoT hub, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours, and evaluates to PT1H by default.
    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, and evaluates to PT1M by default.
    maxDeliveryCount Number
    The number of times the IoT hub attempts to deliver a file upload notification message. It evaluates to 10 by default.
    notifications Boolean
    Used to specify whether file notifications are sent to IoT Hub on upload. It evaluates to false by default.
    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, and evaluates to PT1H by default.

    IoTHubIdentity, IoTHubIdentityArgs

    Type string
    The type of Managed Identity which should be assigned to the Iot Hub. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.
    IdentityIds List<string>
    A list of User Managed Identity ID's which should be assigned to the Iot Hub.
    PrincipalId string
    The ID of the System Managed Service Principal.
    TenantId string
    The ID of the Tenant the System Managed Service Principal is assigned in.
    Type string
    The type of Managed Identity which should be assigned to the Iot Hub. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.
    IdentityIds []string
    A list of User Managed Identity ID's which should be assigned to the Iot Hub.
    PrincipalId string
    The ID of the System Managed Service Principal.
    TenantId string
    The ID of the Tenant the System Managed Service Principal is assigned in.
    type String
    The type of Managed Identity which should be assigned to the Iot Hub. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.
    identityIds List<String>
    A list of User Managed Identity ID's which should be assigned to the Iot Hub.
    principalId String
    The ID of the System Managed Service Principal.
    tenantId String
    The ID of the Tenant the System Managed Service Principal is assigned in.
    type string
    The type of Managed Identity which should be assigned to the Iot Hub. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.
    identityIds string[]
    A list of User Managed Identity ID's which should be assigned to the Iot Hub.
    principalId string
    The ID of the System Managed Service Principal.
    tenantId string
    The ID of the Tenant the System Managed Service Principal is assigned in.
    type str
    The type of Managed Identity which should be assigned to the Iot Hub. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.
    identity_ids Sequence[str]
    A list of User Managed Identity ID's which should be assigned to the Iot Hub.
    principal_id str
    The ID of the System Managed Service Principal.
    tenant_id str
    The ID of the Tenant the System Managed Service Principal is assigned in.
    type String
    The type of Managed Identity which should be assigned to the Iot Hub. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned.
    identityIds List<String>
    A list of User Managed Identity ID's which should be assigned to the Iot Hub.
    principalId String
    The ID of the System Managed Service Principal.
    tenantId String
    The ID of the Tenant the System Managed Service Principal is assigned in.

    IoTHubIpFilterRule, IoTHubIpFilterRuleArgs

    Action string
    The desired action for requests captured by this rule. Possible values are Accept, Reject
    IpMask string
    The IP address range in CIDR notation for the rule.
    Name string
    The name of the filter.
    Action string
    The desired action for requests captured by this rule. Possible values are Accept, Reject
    IpMask string
    The IP address range in CIDR notation for the rule.
    Name string
    The name of the filter.
    action String
    The desired action for requests captured by this rule. Possible values are Accept, Reject
    ipMask String
    The IP address range in CIDR notation for the rule.
    name String
    The name of the filter.
    action string
    The desired action for requests captured by this rule. Possible values are Accept, Reject
    ipMask string
    The IP address range in CIDR notation for the rule.
    name string
    The name of the filter.
    action str
    The desired action for requests captured by this rule. Possible values are Accept, Reject
    ip_mask str
    The IP address range in CIDR notation for the rule.
    name str
    The name of the filter.
    action String
    The desired action for requests captured by this rule. Possible values are Accept, Reject
    ipMask String
    The IP address range in CIDR notation for the rule.
    name String
    The name of the filter.

    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.
    Condition string
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    Condition string
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition String
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition string
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition str
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    condition String
    The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. 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.
    Name string
    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.
    Capacity int
    The number of provisioned IoT Hub units.
    Name string
    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.
    capacity Integer
    The number of provisioned IoT Hub units.
    name String
    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.
    capacity number
    The number of provisioned IoT Hub units.
    name string
    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.
    capacity int
    The number of provisioned IoT Hub units.
    name str
    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.
    capacity Number
    The number of provisioned IoT Hub units.
    name String
    The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3.

    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.

    Viewing docs for Azure v4.42.0 (Older version)
    published on Monday, Mar 9, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial