We recommend using Azure Native.
azure.iot.IoTHub
Manages an IotHub
Note: Endpoints can be defined either directly on the
azure.iot.IoTHubresource, or using theazurerm_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 aazurerm_iothub_endpoint_*resource and another endpoint of a different type directly on theazure.iot.IoTHubresource is not supported.
Note: Routes can be defined either directly on the
azure.iot.IoTHubresource, or using theazure.iot.Routeresource - 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.IoTHubresource, or using theazure.iot.Enrichmentresource - 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.IoTHubresource, or using theazure.iot.FallbackRouteresource - but the two cannot be used together. If both are used against the same IoTHub, spurious changes will occur.
Note: File upload can be defined either directly on the
azure.iot.IoTHubresource, or using theazure.iot.FileUploadresource - but the two cannot be used together. If both are used against the same IoTHub, spurious changes will occur.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
    name: "example-resources",
    location: "West Europe",
});
const exampleAccount = new azure.storage.Account("example", {
    name: "examplestorage",
    resourceGroupName: example.name,
    location: example.location,
    accountTier: "Standard",
    accountReplicationType: "LRS",
});
const exampleContainer = new azure.storage.Container("example", {
    name: "examplecontainer",
    storageAccountName: exampleAccount.name,
    containerAccessType: "private",
});
const exampleEventHubNamespace = new azure.eventhub.EventHubNamespace("example", {
    name: "example-namespace",
    resourceGroupName: example.name,
    location: example.location,
    sku: "Basic",
});
const exampleEventHub = new azure.eventhub.EventHub("example", {
    name: "example-eventhub",
    resourceGroupName: example.name,
    namespaceName: exampleEventHubNamespace.name,
    partitionCount: 2,
    messageRetention: 1,
});
const exampleAuthorizationRule = new azure.eventhub.AuthorizationRule("example", {
    resourceGroupName: example.name,
    namespaceName: exampleEventHubNamespace.name,
    eventhubName: exampleEventHub.name,
    name: "acctest",
    send: true,
});
const exampleIoTHub = new azure.iot.IoTHub("example", {
    name: "Example-IoTHub",
    resourceGroupName: example.name,
    location: example.location,
    localAuthenticationEnabled: false,
    sku: {
        name: "S1",
        capacity: 1,
    },
    endpoints: [
        {
            type: "AzureIotHub.StorageContainer",
            connectionString: exampleAccount.primaryBlobConnectionString,
            name: "export",
            batchFrequencyInSeconds: 60,
            maxChunkSizeInBytes: 10485760,
            containerName: exampleContainer.name,
            encoding: "Avro",
            fileNameFormat: "{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}",
        },
        {
            type: "AzureIotHub.EventHub",
            connectionString: exampleAuthorizationRule.primaryConnectionString,
            name: "export2",
        },
    ],
    routes: [
        {
            name: "export",
            source: "DeviceMessages",
            condition: "true",
            endpointNames: ["export"],
            enabled: true,
        },
        {
            name: "export2",
            source: "DeviceMessages",
            condition: "true",
            endpointNames: ["export2"],
            enabled: true,
        },
    ],
    enrichments: [{
        key: "tenant",
        value: "$twin.tags.Tenant",
        endpointNames: [
            "export",
            "export2",
        ],
    }],
    cloudToDevice: {
        maxDeliveryCount: 30,
        defaultTtl: "PT1H",
        feedbacks: [{
            timeToLive: "PT1H10M",
            maxDeliveryCount: 15,
            lockDuration: "PT30S",
        }],
    },
    tags: {
        purpose: "testing",
    },
});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
    name="example-resources",
    location="West Europe")
example_account = azure.storage.Account("example",
    name="examplestorage",
    resource_group_name=example.name,
    location=example.location,
    account_tier="Standard",
    account_replication_type="LRS")
example_container = azure.storage.Container("example",
    name="examplecontainer",
    storage_account_name=example_account.name,
    container_access_type="private")
example_event_hub_namespace = azure.eventhub.EventHubNamespace("example",
    name="example-namespace",
    resource_group_name=example.name,
    location=example.location,
    sku="Basic")
example_event_hub = azure.eventhub.EventHub("example",
    name="example-eventhub",
    resource_group_name=example.name,
    namespace_name=example_event_hub_namespace.name,
    partition_count=2,
    message_retention=1)
example_authorization_rule = azure.eventhub.AuthorizationRule("example",
    resource_group_name=example.name,
    namespace_name=example_event_hub_namespace.name,
    eventhub_name=example_event_hub.name,
    name="acctest",
    send=True)
example_io_t_hub = azure.iot.IoTHub("example",
    name="Example-IoTHub",
    resource_group_name=example.name,
    location=example.location,
    local_authentication_enabled=False,
    sku={
        "name": "S1",
        "capacity": 1,
    },
    endpoints=[
        {
            "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}",
        },
        {
            "type": "AzureIotHub.EventHub",
            "connection_string": example_authorization_rule.primary_connection_string,
            "name": "export2",
        },
    ],
    routes=[
        {
            "name": "export",
            "source": "DeviceMessages",
            "condition": "true",
            "endpoint_names": ["export"],
            "enabled": True,
        },
        {
            "name": "export2",
            "source": "DeviceMessages",
            "condition": "true",
            "endpoint_names": ["export2"],
            "enabled": True,
        },
    ],
    enrichments=[{
        "key": "tenant",
        "value": "$twin.tags.Tenant",
        "endpoint_names": [
            "export",
            "export2",
        ],
    }],
    cloud_to_device={
        "max_delivery_count": 30,
        "default_ttl": "PT1H",
        "feedbacks": [{
            "time_to_live": "PT1H10M",
            "max_delivery_count": 15,
            "lock_duration": "PT30S",
        }],
    },
    tags={
        "purpose": "testing",
    })
package main
import (
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/eventhub"
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/iot"
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/storage"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
			Name:     pulumi.String("example-resources"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleAccount, err := storage.NewAccount(ctx, "example", &storage.AccountArgs{
			Name:                   pulumi.String("examplestorage"),
			ResourceGroupName:      example.Name,
			Location:               example.Location,
			AccountTier:            pulumi.String("Standard"),
			AccountReplicationType: pulumi.String("LRS"),
		})
		if err != nil {
			return err
		}
		exampleContainer, err := storage.NewContainer(ctx, "example", &storage.ContainerArgs{
			Name:                pulumi.String("examplecontainer"),
			StorageAccountName:  exampleAccount.Name,
			ContainerAccessType: pulumi.String("private"),
		})
		if err != nil {
			return err
		}
		exampleEventHubNamespace, err := eventhub.NewEventHubNamespace(ctx, "example", &eventhub.EventHubNamespaceArgs{
			Name:              pulumi.String("example-namespace"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			Sku:               pulumi.String("Basic"),
		})
		if err != nil {
			return err
		}
		exampleEventHub, err := eventhub.NewEventHub(ctx, "example", &eventhub.EventHubArgs{
			Name:              pulumi.String("example-eventhub"),
			ResourceGroupName: example.Name,
			NamespaceName:     exampleEventHubNamespace.Name,
			PartitionCount:    pulumi.Int(2),
			MessageRetention:  pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		exampleAuthorizationRule, err := eventhub.NewAuthorizationRule(ctx, "example", &eventhub.AuthorizationRuleArgs{
			ResourceGroupName: example.Name,
			NamespaceName:     exampleEventHubNamespace.Name,
			EventhubName:      exampleEventHub.Name,
			Name:              pulumi.String("acctest"),
			Send:              pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = iot.NewIoTHub(ctx, "example", &iot.IoTHubArgs{
			Name:                       pulumi.String("Example-IoTHub"),
			ResourceGroupName:          example.Name,
			Location:                   example.Location,
			LocalAuthenticationEnabled: pulumi.Bool(false),
			Sku: &iot.IoTHubSkuArgs{
				Name:     pulumi.String("S1"),
				Capacity: pulumi.Int(1),
			},
			Endpoints: iot.IoTHubEndpointArray{
				&iot.IoTHubEndpointArgs{
					Type:                    pulumi.String("AzureIotHub.StorageContainer"),
					ConnectionString:        exampleAccount.PrimaryBlobConnectionString,
					Name:                    pulumi.String("export"),
					BatchFrequencyInSeconds: pulumi.Int(60),
					MaxChunkSizeInBytes:     pulumi.Int(10485760),
					ContainerName:           exampleContainer.Name,
					Encoding:                pulumi.String("Avro"),
					FileNameFormat:          pulumi.String("{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}"),
				},
				&iot.IoTHubEndpointArgs{
					Type:             pulumi.String("AzureIotHub.EventHub"),
					ConnectionString: exampleAuthorizationRule.PrimaryConnectionString,
					Name:             pulumi.String("export2"),
				},
			},
			Routes: iot.IoTHubRouteArray{
				&iot.IoTHubRouteArgs{
					Name:      pulumi.String("export"),
					Source:    pulumi.String("DeviceMessages"),
					Condition: pulumi.String("true"),
					EndpointNames: pulumi.StringArray{
						pulumi.String("export"),
					},
					Enabled: pulumi.Bool(true),
				},
				&iot.IoTHubRouteArgs{
					Name:      pulumi.String("export2"),
					Source:    pulumi.String("DeviceMessages"),
					Condition: pulumi.String("true"),
					EndpointNames: pulumi.StringArray{
						pulumi.String("export2"),
					},
					Enabled: pulumi.Bool(true),
				},
			},
			Enrichments: iot.IoTHubEnrichmentArray{
				&iot.IoTHubEnrichmentArgs{
					Key:   pulumi.String("tenant"),
					Value: pulumi.String("$twin.tags.Tenant"),
					EndpointNames: pulumi.StringArray{
						pulumi.String("export"),
						pulumi.String("export2"),
					},
				},
			},
			CloudToDevice: &iot.IoTHubCloudToDeviceArgs{
				MaxDeliveryCount: pulumi.Int(30),
				DefaultTtl:       pulumi.String("PT1H"),
				Feedbacks: iot.IoTHubCloudToDeviceFeedbackArray{
					&iot.IoTHubCloudToDeviceFeedbackArgs{
						TimeToLive:       pulumi.String("PT1H10M"),
						MaxDeliveryCount: pulumi.Int(15),
						LockDuration:     pulumi.String("PT30S"),
					},
				},
			},
			Tags: pulumi.StringMap{
				"purpose": pulumi.String("testing"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() => 
{
    var example = new Azure.Core.ResourceGroup("example", new()
    {
        Name = "example-resources",
        Location = "West Europe",
    });
    var exampleAccount = new Azure.Storage.Account("example", new()
    {
        Name = "examplestorage",
        ResourceGroupName = example.Name,
        Location = example.Location,
        AccountTier = "Standard",
        AccountReplicationType = "LRS",
    });
    var exampleContainer = new Azure.Storage.Container("example", new()
    {
        Name = "examplecontainer",
        StorageAccountName = exampleAccount.Name,
        ContainerAccessType = "private",
    });
    var exampleEventHubNamespace = new Azure.EventHub.EventHubNamespace("example", new()
    {
        Name = "example-namespace",
        ResourceGroupName = example.Name,
        Location = example.Location,
        Sku = "Basic",
    });
    var exampleEventHub = new Azure.EventHub.EventHub("example", new()
    {
        Name = "example-eventhub",
        ResourceGroupName = example.Name,
        NamespaceName = exampleEventHubNamespace.Name,
        PartitionCount = 2,
        MessageRetention = 1,
    });
    var exampleAuthorizationRule = new Azure.EventHub.AuthorizationRule("example", new()
    {
        ResourceGroupName = example.Name,
        NamespaceName = exampleEventHubNamespace.Name,
        EventhubName = exampleEventHub.Name,
        Name = "acctest",
        Send = true,
    });
    var exampleIoTHub = new Azure.Iot.IoTHub("example", new()
    {
        Name = "Example-IoTHub",
        ResourceGroupName = example.Name,
        Location = example.Location,
        LocalAuthenticationEnabled = false,
        Sku = new Azure.Iot.Inputs.IoTHubSkuArgs
        {
            Name = "S1",
            Capacity = 1,
        },
        Endpoints = new[]
        {
            new Azure.Iot.Inputs.IoTHubEndpointArgs
            {
                Type = "AzureIotHub.StorageContainer",
                ConnectionString = exampleAccount.PrimaryBlobConnectionString,
                Name = "export",
                BatchFrequencyInSeconds = 60,
                MaxChunkSizeInBytes = 10485760,
                ContainerName = exampleContainer.Name,
                Encoding = "Avro",
                FileNameFormat = "{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}",
            },
            new Azure.Iot.Inputs.IoTHubEndpointArgs
            {
                Type = "AzureIotHub.EventHub",
                ConnectionString = exampleAuthorizationRule.PrimaryConnectionString,
                Name = "export2",
            },
        },
        Routes = new[]
        {
            new Azure.Iot.Inputs.IoTHubRouteArgs
            {
                Name = "export",
                Source = "DeviceMessages",
                Condition = "true",
                EndpointNames = new[]
                {
                    "export",
                },
                Enabled = true,
            },
            new Azure.Iot.Inputs.IoTHubRouteArgs
            {
                Name = "export2",
                Source = "DeviceMessages",
                Condition = "true",
                EndpointNames = new[]
                {
                    "export2",
                },
                Enabled = true,
            },
        },
        Enrichments = new[]
        {
            new Azure.Iot.Inputs.IoTHubEnrichmentArgs
            {
                Key = "tenant",
                Value = "$twin.tags.Tenant",
                EndpointNames = new[]
                {
                    "export",
                    "export2",
                },
            },
        },
        CloudToDevice = new Azure.Iot.Inputs.IoTHubCloudToDeviceArgs
        {
            MaxDeliveryCount = 30,
            DefaultTtl = "PT1H",
            Feedbacks = new[]
            {
                new Azure.Iot.Inputs.IoTHubCloudToDeviceFeedbackArgs
                {
                    TimeToLive = "PT1H10M",
                    MaxDeliveryCount = 15,
                    LockDuration = "PT30S",
                },
            },
        },
        Tags = 
        {
            { "purpose", "testing" },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.storage.Container;
import com.pulumi.azure.storage.ContainerArgs;
import com.pulumi.azure.eventhub.EventHubNamespace;
import com.pulumi.azure.eventhub.EventHubNamespaceArgs;
import com.pulumi.azure.eventhub.EventHub;
import com.pulumi.azure.eventhub.EventHubArgs;
import com.pulumi.azure.eventhub.AuthorizationRule;
import com.pulumi.azure.eventhub.AuthorizationRuleArgs;
import com.pulumi.azure.iot.IoTHub;
import com.pulumi.azure.iot.IoTHubArgs;
import com.pulumi.azure.iot.inputs.IoTHubSkuArgs;
import com.pulumi.azure.iot.inputs.IoTHubEndpointArgs;
import com.pulumi.azure.iot.inputs.IoTHubRouteArgs;
import com.pulumi.azure.iot.inputs.IoTHubEnrichmentArgs;
import com.pulumi.azure.iot.inputs.IoTHubCloudToDeviceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new ResourceGroup("example", ResourceGroupArgs.builder()
            .name("example-resources")
            .location("West Europe")
            .build());
        var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
            .name("examplestorage")
            .resourceGroupName(example.name())
            .location(example.location())
            .accountTier("Standard")
            .accountReplicationType("LRS")
            .build());
        var exampleContainer = new Container("exampleContainer", ContainerArgs.builder()
            .name("examplecontainer")
            .storageAccountName(exampleAccount.name())
            .containerAccessType("private")
            .build());
        var exampleEventHubNamespace = new EventHubNamespace("exampleEventHubNamespace", EventHubNamespaceArgs.builder()
            .name("example-namespace")
            .resourceGroupName(example.name())
            .location(example.location())
            .sku("Basic")
            .build());
        var exampleEventHub = new EventHub("exampleEventHub", EventHubArgs.builder()
            .name("example-eventhub")
            .resourceGroupName(example.name())
            .namespaceName(exampleEventHubNamespace.name())
            .partitionCount(2)
            .messageRetention(1)
            .build());
        var exampleAuthorizationRule = new AuthorizationRule("exampleAuthorizationRule", AuthorizationRuleArgs.builder()
            .resourceGroupName(example.name())
            .namespaceName(exampleEventHubNamespace.name())
            .eventhubName(exampleEventHub.name())
            .name("acctest")
            .send(true)
            .build());
        var exampleIoTHub = new IoTHub("exampleIoTHub", IoTHubArgs.builder()
            .name("Example-IoTHub")
            .resourceGroupName(example.name())
            .location(example.location())
            .localAuthenticationEnabled(false)
            .sku(IoTHubSkuArgs.builder()
                .name("S1")
                .capacity(1)
                .build())
            .endpoints(            
                IoTHubEndpointArgs.builder()
                    .type("AzureIotHub.StorageContainer")
                    .connectionString(exampleAccount.primaryBlobConnectionString())
                    .name("export")
                    .batchFrequencyInSeconds(60)
                    .maxChunkSizeInBytes(10485760)
                    .containerName(exampleContainer.name())
                    .encoding("Avro")
                    .fileNameFormat("{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}")
                    .build(),
                IoTHubEndpointArgs.builder()
                    .type("AzureIotHub.EventHub")
                    .connectionString(exampleAuthorizationRule.primaryConnectionString())
                    .name("export2")
                    .build())
            .routes(            
                IoTHubRouteArgs.builder()
                    .name("export")
                    .source("DeviceMessages")
                    .condition("true")
                    .endpointNames("export")
                    .enabled(true)
                    .build(),
                IoTHubRouteArgs.builder()
                    .name("export2")
                    .source("DeviceMessages")
                    .condition("true")
                    .endpointNames("export2")
                    .enabled(true)
                    .build())
            .enrichments(IoTHubEnrichmentArgs.builder()
                .key("tenant")
                .value("$twin.tags.Tenant")
                .endpointNames(                
                    "export",
                    "export2")
                .build())
            .cloudToDevice(IoTHubCloudToDeviceArgs.builder()
                .maxDeliveryCount(30)
                .defaultTtl("PT1H")
                .feedbacks(IoTHubCloudToDeviceFeedbackArgs.builder()
                    .timeToLive("PT1H10M")
                    .maxDeliveryCount(15)
                    .lockDuration("PT30S")
                    .build())
                .build())
            .tags(Map.of("purpose", "testing"))
            .build());
    }
}
resources:
  example:
    type: azure:core:ResourceGroup
    properties:
      name: example-resources
      location: West Europe
  exampleAccount:
    type: azure:storage:Account
    name: example
    properties:
      name: examplestorage
      resourceGroupName: ${example.name}
      location: ${example.location}
      accountTier: Standard
      accountReplicationType: LRS
  exampleContainer:
    type: azure:storage:Container
    name: example
    properties:
      name: examplecontainer
      storageAccountName: ${exampleAccount.name}
      containerAccessType: private
  exampleEventHubNamespace:
    type: azure:eventhub:EventHubNamespace
    name: example
    properties:
      name: example-namespace
      resourceGroupName: ${example.name}
      location: ${example.location}
      sku: Basic
  exampleEventHub:
    type: azure:eventhub:EventHub
    name: example
    properties:
      name: example-eventhub
      resourceGroupName: ${example.name}
      namespaceName: ${exampleEventHubNamespace.name}
      partitionCount: 2
      messageRetention: 1
  exampleAuthorizationRule:
    type: azure:eventhub:AuthorizationRule
    name: example
    properties:
      resourceGroupName: ${example.name}
      namespaceName: ${exampleEventHubNamespace.name}
      eventhubName: ${exampleEventHub.name}
      name: acctest
      send: true
  exampleIoTHub:
    type: azure:iot:IoTHub
    name: example
    properties:
      name: Example-IoTHub
      resourceGroupName: ${example.name}
      location: ${example.location}
      localAuthenticationEnabled: false
      sku:
        name: S1
        capacity: '1'
      endpoints:
        - type: AzureIotHub.StorageContainer
          connectionString: ${exampleAccount.primaryBlobConnectionString}
          name: export
          batchFrequencyInSeconds: 60
          maxChunkSizeInBytes: 1.048576e+07
          containerName: ${exampleContainer.name}
          encoding: Avro
          fileNameFormat: '{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}'
        - type: AzureIotHub.EventHub
          connectionString: ${exampleAuthorizationRule.primaryConnectionString}
          name: export2
      routes:
        - name: export
          source: DeviceMessages
          condition: 'true'
          endpointNames:
            - export
          enabled: true
        - name: export2
          source: DeviceMessages
          condition: 'true'
          endpointNames:
            - export2
          enabled: true
      enrichments:
        - key: tenant
          value: $twin.tags.Tenant
          endpointNames:
            - export
            - export2
      cloudToDevice:
        maxDeliveryCount: 30
        defaultTtl: PT1H
        feedbacks:
          - timeToLive: PT1H10M
            maxDeliveryCount: 15
            lockDuration: PT30S
      tags:
        purpose: testing
Create IoTHub Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new IoTHub(name: string, args: IoTHubArgs, opts?: CustomResourceOptions);@overload
def IoTHub(resource_name: str,
           args: IoTHubArgs,
           opts: Optional[ResourceOptions] = None)
@overload
def IoTHub(resource_name: str,
           opts: Optional[ResourceOptions] = None,
           resource_group_name: Optional[str] = None,
           sku: Optional[IoTHubSkuArgs] = None,
           local_authentication_enabled: Optional[bool] = None,
           location: Optional[str] = None,
           event_hub_retention_in_days: Optional[int] = None,
           fallback_route: Optional[IoTHubFallbackRouteArgs] = None,
           file_upload: Optional[IoTHubFileUploadArgs] = None,
           identity: Optional[IoTHubIdentityArgs] = None,
           cloud_to_device: Optional[IoTHubCloudToDeviceArgs] = None,
           event_hub_partition_count: Optional[int] = None,
           min_tls_version: Optional[str] = None,
           name: Optional[str] = None,
           network_rule_sets: Optional[Sequence[IoTHubNetworkRuleSetArgs]] = None,
           public_network_access_enabled: Optional[bool] = None,
           enrichments: Optional[Sequence[IoTHubEnrichmentArgs]] = None,
           routes: Optional[Sequence[IoTHubRouteArgs]] = None,
           endpoints: Optional[Sequence[IoTHubEndpointArgs]] = None,
           tags: Optional[Mapping[str, str]] = None)func NewIoTHub(ctx *Context, name string, args IoTHubArgs, opts ...ResourceOption) (*IoTHub, error)public IoTHub(string name, IoTHubArgs args, CustomResourceOptions? opts = null)
public IoTHub(String name, IoTHubArgs args)
public IoTHub(String name, IoTHubArgs args, CustomResourceOptions options)
type: azure:iot:IoTHub
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args IoTHubArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args IoTHubArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args IoTHubArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args IoTHubArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args IoTHubArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
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",
    },
    LocalAuthenticationEnabled = false,
    Location = "string",
    EventHubRetentionInDays = 0,
    FallbackRoute = new Azure.Iot.Inputs.IoTHubFallbackRouteArgs
    {
        Condition = "string",
        Enabled = false,
        EndpointNames = new[]
        {
            "string",
        },
        Source = "string",
    },
    FileUpload = new Azure.Iot.Inputs.IoTHubFileUploadArgs
    {
        ConnectionString = "string",
        ContainerName = "string",
        AuthenticationType = "string",
        DefaultTtl = "string",
        IdentityId = "string",
        LockDuration = "string",
        MaxDeliveryCount = 0,
        Notifications = false,
        SasTtl = "string",
    },
    Identity = new Azure.Iot.Inputs.IoTHubIdentityArgs
    {
        Type = "string",
        IdentityIds = new[]
        {
            "string",
        },
        PrincipalId = "string",
        TenantId = "string",
    },
    CloudToDevice = new Azure.Iot.Inputs.IoTHubCloudToDeviceArgs
    {
        DefaultTtl = "string",
        Feedbacks = new[]
        {
            new Azure.Iot.Inputs.IoTHubCloudToDeviceFeedbackArgs
            {
                LockDuration = "string",
                MaxDeliveryCount = 0,
                TimeToLive = "string",
            },
        },
        MaxDeliveryCount = 0,
    },
    EventHubPartitionCount = 0,
    MinTlsVersion = "string",
    Name = "string",
    NetworkRuleSets = new[]
    {
        new Azure.Iot.Inputs.IoTHubNetworkRuleSetArgs
        {
            ApplyToBuiltinEventhubEndpoint = false,
            DefaultAction = "string",
            IpRules = new[]
            {
                new Azure.Iot.Inputs.IoTHubNetworkRuleSetIpRuleArgs
                {
                    IpMask = "string",
                    Name = "string",
                    Action = "string",
                },
            },
        },
    },
    PublicNetworkAccessEnabled = false,
    Enrichments = new[]
    {
        new Azure.Iot.Inputs.IoTHubEnrichmentArgs
        {
            EndpointNames = new[]
            {
                "string",
            },
            Key = "string",
            Value = "string",
        },
    },
    Routes = new[]
    {
        new Azure.Iot.Inputs.IoTHubRouteArgs
        {
            Enabled = false,
            EndpointNames = new[]
            {
                "string",
            },
            Name = "string",
            Source = "string",
            Condition = "string",
        },
    },
    Endpoints = new[]
    {
        new Azure.Iot.Inputs.IoTHubEndpointArgs
        {
            Name = "string",
            Type = "string",
            EntityPath = "string",
            ContainerName = "string",
            Encoding = "string",
            EndpointUri = "string",
            AuthenticationType = "string",
            FileNameFormat = "string",
            IdentityId = "string",
            MaxChunkSizeInBytes = 0,
            ConnectionString = "string",
            ResourceGroupName = "string",
            SubscriptionId = "string",
            BatchFrequencyInSeconds = 0,
        },
    },
    Tags = 
    {
        { "string", "string" },
    },
});
example, err := iot.NewIoTHub(ctx, "ioTHubResource", &iot.IoTHubArgs{
	ResourceGroupName: pulumi.String("string"),
	Sku: &iot.IoTHubSkuArgs{
		Capacity: pulumi.Int(0),
		Name:     pulumi.String("string"),
	},
	LocalAuthenticationEnabled: pulumi.Bool(false),
	Location:                   pulumi.String("string"),
	EventHubRetentionInDays:    pulumi.Int(0),
	FallbackRoute: &iot.IoTHubFallbackRouteArgs{
		Condition: pulumi.String("string"),
		Enabled:   pulumi.Bool(false),
		EndpointNames: pulumi.StringArray{
			pulumi.String("string"),
		},
		Source: pulumi.String("string"),
	},
	FileUpload: &iot.IoTHubFileUploadArgs{
		ConnectionString:   pulumi.String("string"),
		ContainerName:      pulumi.String("string"),
		AuthenticationType: pulumi.String("string"),
		DefaultTtl:         pulumi.String("string"),
		IdentityId:         pulumi.String("string"),
		LockDuration:       pulumi.String("string"),
		MaxDeliveryCount:   pulumi.Int(0),
		Notifications:      pulumi.Bool(false),
		SasTtl:             pulumi.String("string"),
	},
	Identity: &iot.IoTHubIdentityArgs{
		Type: pulumi.String("string"),
		IdentityIds: pulumi.StringArray{
			pulumi.String("string"),
		},
		PrincipalId: pulumi.String("string"),
		TenantId:    pulumi.String("string"),
	},
	CloudToDevice: &iot.IoTHubCloudToDeviceArgs{
		DefaultTtl: pulumi.String("string"),
		Feedbacks: iot.IoTHubCloudToDeviceFeedbackArray{
			&iot.IoTHubCloudToDeviceFeedbackArgs{
				LockDuration:     pulumi.String("string"),
				MaxDeliveryCount: pulumi.Int(0),
				TimeToLive:       pulumi.String("string"),
			},
		},
		MaxDeliveryCount: pulumi.Int(0),
	},
	EventHubPartitionCount: pulumi.Int(0),
	MinTlsVersion:          pulumi.String("string"),
	Name:                   pulumi.String("string"),
	NetworkRuleSets: iot.IoTHubNetworkRuleSetArray{
		&iot.IoTHubNetworkRuleSetArgs{
			ApplyToBuiltinEventhubEndpoint: pulumi.Bool(false),
			DefaultAction:                  pulumi.String("string"),
			IpRules: iot.IoTHubNetworkRuleSetIpRuleArray{
				&iot.IoTHubNetworkRuleSetIpRuleArgs{
					IpMask: pulumi.String("string"),
					Name:   pulumi.String("string"),
					Action: pulumi.String("string"),
				},
			},
		},
	},
	PublicNetworkAccessEnabled: pulumi.Bool(false),
	Enrichments: iot.IoTHubEnrichmentArray{
		&iot.IoTHubEnrichmentArgs{
			EndpointNames: pulumi.StringArray{
				pulumi.String("string"),
			},
			Key:   pulumi.String("string"),
			Value: pulumi.String("string"),
		},
	},
	Routes: iot.IoTHubRouteArray{
		&iot.IoTHubRouteArgs{
			Enabled: pulumi.Bool(false),
			EndpointNames: pulumi.StringArray{
				pulumi.String("string"),
			},
			Name:      pulumi.String("string"),
			Source:    pulumi.String("string"),
			Condition: pulumi.String("string"),
		},
	},
	Endpoints: iot.IoTHubEndpointArray{
		&iot.IoTHubEndpointArgs{
			Name:                    pulumi.String("string"),
			Type:                    pulumi.String("string"),
			EntityPath:              pulumi.String("string"),
			ContainerName:           pulumi.String("string"),
			Encoding:                pulumi.String("string"),
			EndpointUri:             pulumi.String("string"),
			AuthenticationType:      pulumi.String("string"),
			FileNameFormat:          pulumi.String("string"),
			IdentityId:              pulumi.String("string"),
			MaxChunkSizeInBytes:     pulumi.Int(0),
			ConnectionString:        pulumi.String("string"),
			ResourceGroupName:       pulumi.String("string"),
			SubscriptionId:          pulumi.String("string"),
			BatchFrequencyInSeconds: pulumi.Int(0),
		},
	},
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
})
var ioTHubResource = new IoTHub("ioTHubResource", IoTHubArgs.builder()
    .resourceGroupName("string")
    .sku(IoTHubSkuArgs.builder()
        .capacity(0)
        .name("string")
        .build())
    .localAuthenticationEnabled(false)
    .location("string")
    .eventHubRetentionInDays(0)
    .fallbackRoute(IoTHubFallbackRouteArgs.builder()
        .condition("string")
        .enabled(false)
        .endpointNames("string")
        .source("string")
        .build())
    .fileUpload(IoTHubFileUploadArgs.builder()
        .connectionString("string")
        .containerName("string")
        .authenticationType("string")
        .defaultTtl("string")
        .identityId("string")
        .lockDuration("string")
        .maxDeliveryCount(0)
        .notifications(false)
        .sasTtl("string")
        .build())
    .identity(IoTHubIdentityArgs.builder()
        .type("string")
        .identityIds("string")
        .principalId("string")
        .tenantId("string")
        .build())
    .cloudToDevice(IoTHubCloudToDeviceArgs.builder()
        .defaultTtl("string")
        .feedbacks(IoTHubCloudToDeviceFeedbackArgs.builder()
            .lockDuration("string")
            .maxDeliveryCount(0)
            .timeToLive("string")
            .build())
        .maxDeliveryCount(0)
        .build())
    .eventHubPartitionCount(0)
    .minTlsVersion("string")
    .name("string")
    .networkRuleSets(IoTHubNetworkRuleSetArgs.builder()
        .applyToBuiltinEventhubEndpoint(false)
        .defaultAction("string")
        .ipRules(IoTHubNetworkRuleSetIpRuleArgs.builder()
            .ipMask("string")
            .name("string")
            .action("string")
            .build())
        .build())
    .publicNetworkAccessEnabled(false)
    .enrichments(IoTHubEnrichmentArgs.builder()
        .endpointNames("string")
        .key("string")
        .value("string")
        .build())
    .routes(IoTHubRouteArgs.builder()
        .enabled(false)
        .endpointNames("string")
        .name("string")
        .source("string")
        .condition("string")
        .build())
    .endpoints(IoTHubEndpointArgs.builder()
        .name("string")
        .type("string")
        .entityPath("string")
        .containerName("string")
        .encoding("string")
        .endpointUri("string")
        .authenticationType("string")
        .fileNameFormat("string")
        .identityId("string")
        .maxChunkSizeInBytes(0)
        .connectionString("string")
        .resourceGroupName("string")
        .subscriptionId("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",
    },
    local_authentication_enabled=False,
    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",
        "authentication_type": "string",
        "default_ttl": "string",
        "identity_id": "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",
        "subscription_id": "string",
        "batch_frequency_in_seconds": 0,
    }],
    tags={
        "string": "string",
    })
const ioTHubResource = new azure.iot.IoTHub("ioTHubResource", {
    resourceGroupName: "string",
    sku: {
        capacity: 0,
        name: "string",
    },
    localAuthenticationEnabled: false,
    location: "string",
    eventHubRetentionInDays: 0,
    fallbackRoute: {
        condition: "string",
        enabled: false,
        endpointNames: ["string"],
        source: "string",
    },
    fileUpload: {
        connectionString: "string",
        containerName: "string",
        authenticationType: "string",
        defaultTtl: "string",
        identityId: "string",
        lockDuration: "string",
        maxDeliveryCount: 0,
        notifications: false,
        sasTtl: "string",
    },
    identity: {
        type: "string",
        identityIds: ["string"],
        principalId: "string",
        tenantId: "string",
    },
    cloudToDevice: {
        defaultTtl: "string",
        feedbacks: [{
            lockDuration: "string",
            maxDeliveryCount: 0,
            timeToLive: "string",
        }],
        maxDeliveryCount: 0,
    },
    eventHubPartitionCount: 0,
    minTlsVersion: "string",
    name: "string",
    networkRuleSets: [{
        applyToBuiltinEventhubEndpoint: false,
        defaultAction: "string",
        ipRules: [{
            ipMask: "string",
            name: "string",
            action: "string",
        }],
    }],
    publicNetworkAccessEnabled: false,
    enrichments: [{
        endpointNames: ["string"],
        key: "string",
        value: "string",
    }],
    routes: [{
        enabled: false,
        endpointNames: ["string"],
        name: "string",
        source: "string",
        condition: "string",
    }],
    endpoints: [{
        name: "string",
        type: "string",
        entityPath: "string",
        containerName: "string",
        encoding: "string",
        endpointUri: "string",
        authenticationType: "string",
        fileNameFormat: "string",
        identityId: "string",
        maxChunkSizeInBytes: 0,
        connectionString: "string",
        resourceGroupName: "string",
        subscriptionId: "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
          subscriptionId: string
          type: string
    enrichments:
        - endpointNames:
            - string
          key: string
          value: string
    eventHubPartitionCount: 0
    eventHubRetentionInDays: 0
    fallbackRoute:
        condition: string
        enabled: false
        endpointNames:
            - string
        source: string
    fileUpload:
        authenticationType: string
        connectionString: string
        containerName: string
        defaultTtl: string
        identityId: string
        lockDuration: string
        maxDeliveryCount: 0
        notifications: false
        sasTtl: string
    identity:
        identityIds:
            - string
        principalId: string
        tenantId: string
        type: string
    localAuthenticationEnabled: false
    location: string
    minTlsVersion: string
    name: string
    networkRuleSets:
        - applyToBuiltinEventhubEndpoint: false
          defaultAction: string
          ipRules:
            - action: string
              ipMask: string
              name: string
    publicNetworkAccessEnabled: false
    resourceGroupName: string
    routes:
        - condition: string
          enabled: false
          endpointNames:
            - string
          name: string
          source: string
    sku:
        capacity: 0
        name: string
    tags:
        string: string
IoTHub Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
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:
- ResourceGroup stringName 
- 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
IoTHub Sku 
- A skublock as defined below.
- CloudTo IoDevice THub Cloud To Device 
- Endpoints
List<IoTHub Endpoint> 
- An endpointblock as defined below.
- Enrichments
List<IoTHub Enrichment> 
- EventHub intPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- EventHub intRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- FallbackRoute IoTHub Fallback Route 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- FileUpload IoTHub File Upload 
- A file_uploadblock as defined below.
- Identity
IoTHub Identity 
- An identityblock as defined below.
- LocalAuthentication boolEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- Location string
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- MinTls stringVersion 
- Name string
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- NetworkRule List<IoSets THub Network Rule Set> 
- A network_rule_setblock as defined below.
- PublicNetwork boolAccess Enabled 
- Routes
List<IoTHub Route> 
- Dictionary<string, string>
- ResourceGroup stringName 
- 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
IoTHub Sku Args 
- A skublock as defined below.
- CloudTo IoDevice THub Cloud To Device Args 
- Endpoints
[]IoTHub Endpoint Args 
- An endpointblock as defined below.
- Enrichments
[]IoTHub Enrichment Args 
- EventHub intPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- EventHub intRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- FallbackRoute IoTHub Fallback Route Args 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- FileUpload IoTHub File Upload Args 
- A file_uploadblock as defined below.
- Identity
IoTHub Identity Args 
- An identityblock as defined below.
- LocalAuthentication boolEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- Location string
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- MinTls stringVersion 
- Name string
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- NetworkRule []IoSets THub Network Rule Set Args 
- A network_rule_setblock as defined below.
- PublicNetwork boolAccess Enabled 
- Routes
[]IoTHub Route Args 
- map[string]string
- resourceGroup StringName 
- 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
IoTHub Sku 
- A skublock as defined below.
- cloudTo IoDevice THub Cloud To Device 
- endpoints
List<IoTHub Endpoint> 
- An endpointblock as defined below.
- enrichments
List<IoTHub Enrichment> 
- eventHub IntegerPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- eventHub IntegerRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallbackRoute IoTHub Fallback Route 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- fileUpload IoTHub File Upload 
- A file_uploadblock as defined below.
- identity
IoTHub Identity 
- An identityblock as defined below.
- localAuthentication BooleanEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location String
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- minTls StringVersion 
- name String
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- networkRule List<IoSets THub Network Rule Set> 
- A network_rule_setblock as defined below.
- publicNetwork BooleanAccess Enabled 
- routes
List<IoTHub Route> 
- Map<String,String>
- resourceGroup stringName 
- 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
IoTHub Sku 
- A skublock as defined below.
- cloudTo IoDevice THub Cloud To Device 
- endpoints
IoTHub Endpoint[] 
- An endpointblock as defined below.
- enrichments
IoTHub Enrichment[] 
- eventHub numberPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- eventHub numberRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallbackRoute IoTHub Fallback Route 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- fileUpload IoTHub File Upload 
- A file_uploadblock as defined below.
- identity
IoTHub Identity 
- An identityblock as defined below.
- localAuthentication booleanEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location string
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- minTls stringVersion 
- name string
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- networkRule IoSets THub Network Rule Set[] 
- A network_rule_setblock as defined below.
- publicNetwork booleanAccess Enabled 
- routes
IoTHub Route[] 
- {[key: string]: string}
- resource_group_ strname 
- 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
IoTHub Sku Args 
- A skublock as defined below.
- cloud_to_ Iodevice THub Cloud To Device Args 
- endpoints
Sequence[IoTHub Endpoint Args] 
- An endpointblock as defined below.
- enrichments
Sequence[IoTHub Enrichment Args] 
- event_hub_ intpartition_ count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- event_hub_ intretention_ in_ days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallback_route IoTHub Fallback Route Args 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- file_upload IoTHub File Upload Args 
- A file_uploadblock as defined below.
- identity
IoTHub Identity Args 
- An identityblock as defined below.
- local_authentication_ boolenabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location str
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- min_tls_ strversion 
- name str
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- network_rule_ Sequence[Iosets THub Network Rule Set Args] 
- A network_rule_setblock as defined below.
- public_network_ boolaccess_ enabled 
- routes
Sequence[IoTHub Route Args] 
- Mapping[str, str]
- resourceGroup StringName 
- 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 skublock as defined below.
- cloudTo Property MapDevice 
- endpoints List<Property Map>
- An endpointblock as defined below.
- enrichments List<Property Map>
- eventHub NumberPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- eventHub NumberRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallbackRoute Property Map
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- fileUpload Property Map
- A file_uploadblock as defined below.
- identity Property Map
- An identityblock as defined below.
- localAuthentication BooleanEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location String
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- minTls StringVersion 
- name String
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- networkRule List<Property Map>Sets 
- A network_rule_setblock as defined below.
- publicNetwork BooleanAccess Enabled 
- routes List<Property Map>
- Map<String>
Outputs
All input properties are implicitly available as output properties. Additionally, the IoTHub resource produces the following output properties:
- EventHub stringEvents Endpoint 
- The EventHub compatible endpoint for events data
- EventHub stringEvents Namespace 
- The EventHub namespace for events data
- EventHub stringEvents Path 
- The EventHub compatible path for events data
- EventHub stringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- EventHub stringOperations Path 
- 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.
- 
List<IoTHub Shared Access Policy> 
- One or more shared_access_policyblocks as defined below.
- Type string
- EventHub stringEvents Endpoint 
- The EventHub compatible endpoint for events data
- EventHub stringEvents Namespace 
- The EventHub namespace for events data
- EventHub stringEvents Path 
- The EventHub compatible path for events data
- EventHub stringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- EventHub stringOperations Path 
- 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.
- 
[]IoTHub Shared Access Policy 
- One or more shared_access_policyblocks as defined below.
- Type string
- eventHub StringEvents Endpoint 
- The EventHub compatible endpoint for events data
- eventHub StringEvents Namespace 
- The EventHub namespace for events data
- eventHub StringEvents Path 
- The EventHub compatible path for events data
- eventHub StringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- eventHub StringOperations Path 
- 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.
- 
List<IoTHub Shared Access Policy> 
- One or more shared_access_policyblocks as defined below.
- type String
- eventHub stringEvents Endpoint 
- The EventHub compatible endpoint for events data
- eventHub stringEvents Namespace 
- The EventHub namespace for events data
- eventHub stringEvents Path 
- The EventHub compatible path for events data
- eventHub stringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- eventHub stringOperations Path 
- 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.
- 
IoTHub Shared Access Policy[] 
- One or more shared_access_policyblocks as defined below.
- type string
- event_hub_ strevents_ endpoint 
- The EventHub compatible endpoint for events data
- event_hub_ strevents_ namespace 
- The EventHub namespace for events data
- event_hub_ strevents_ path 
- The EventHub compatible path for events data
- event_hub_ stroperations_ endpoint 
- The EventHub compatible endpoint for operational data
- event_hub_ stroperations_ path 
- 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.
- 
Sequence[IoTHub Shared Access Policy] 
- One or more shared_access_policyblocks as defined below.
- type str
- eventHub StringEvents Endpoint 
- The EventHub compatible endpoint for events data
- eventHub StringEvents Namespace 
- The EventHub namespace for events data
- eventHub StringEvents Path 
- The EventHub compatible path for events data
- eventHub StringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- eventHub StringOperations Path 
- 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.
- List<Property Map>
- One or more shared_access_policyblocks as defined below.
- type String
Look up Existing IoTHub Resource
Get an existing IoTHub resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: IoTHubState, opts?: CustomResourceOptions): IoTHub@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        cloud_to_device: Optional[IoTHubCloudToDeviceArgs] = None,
        endpoints: Optional[Sequence[IoTHubEndpointArgs]] = None,
        enrichments: Optional[Sequence[IoTHubEnrichmentArgs]] = None,
        event_hub_events_endpoint: Optional[str] = None,
        event_hub_events_namespace: Optional[str] = None,
        event_hub_events_path: Optional[str] = None,
        event_hub_operations_endpoint: Optional[str] = None,
        event_hub_operations_path: Optional[str] = None,
        event_hub_partition_count: Optional[int] = None,
        event_hub_retention_in_days: Optional[int] = None,
        fallback_route: Optional[IoTHubFallbackRouteArgs] = None,
        file_upload: Optional[IoTHubFileUploadArgs] = None,
        hostname: Optional[str] = None,
        identity: Optional[IoTHubIdentityArgs] = None,
        local_authentication_enabled: Optional[bool] = None,
        location: Optional[str] = None,
        min_tls_version: Optional[str] = None,
        name: Optional[str] = None,
        network_rule_sets: Optional[Sequence[IoTHubNetworkRuleSetArgs]] = None,
        public_network_access_enabled: Optional[bool] = None,
        resource_group_name: Optional[str] = None,
        routes: Optional[Sequence[IoTHubRouteArgs]] = None,
        shared_access_policies: Optional[Sequence[IoTHubSharedAccessPolicyArgs]] = None,
        sku: Optional[IoTHubSkuArgs] = None,
        tags: Optional[Mapping[str, str]] = None,
        type: Optional[str] = None) -> IoTHubfunc 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.
- CloudTo IoDevice THub Cloud To Device 
- Endpoints
List<IoTHub Endpoint> 
- An endpointblock as defined below.
- Enrichments
List<IoTHub Enrichment> 
- EventHub stringEvents Endpoint 
- The EventHub compatible endpoint for events data
- EventHub stringEvents Namespace 
- The EventHub namespace for events data
- EventHub stringEvents Path 
- The EventHub compatible path for events data
- EventHub stringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- EventHub stringOperations Path 
- The EventHub compatible path for operational data
- EventHub intPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- EventHub intRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- FallbackRoute IoTHub Fallback Route 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- FileUpload IoTHub File Upload 
- A file_uploadblock as defined below.
- Hostname string
- The hostname of the IotHub Resource.
- Identity
IoTHub Identity 
- An identityblock as defined below.
- LocalAuthentication boolEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- Location string
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- MinTls stringVersion 
- Name string
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- NetworkRule List<IoSets THub Network Rule Set> 
- A network_rule_setblock as defined below.
- PublicNetwork boolAccess Enabled 
- ResourceGroup stringName 
- 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<IoTHub Route> 
- 
List<IoTHub Shared Access Policy> 
- One or more shared_access_policyblocks as defined below.
- Sku
IoTHub Sku 
- A skublock as defined below.
- Dictionary<string, string>
- Type string
- CloudTo IoDevice THub Cloud To Device Args 
- Endpoints
[]IoTHub Endpoint Args 
- An endpointblock as defined below.
- Enrichments
[]IoTHub Enrichment Args 
- EventHub stringEvents Endpoint 
- The EventHub compatible endpoint for events data
- EventHub stringEvents Namespace 
- The EventHub namespace for events data
- EventHub stringEvents Path 
- The EventHub compatible path for events data
- EventHub stringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- EventHub stringOperations Path 
- The EventHub compatible path for operational data
- EventHub intPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- EventHub intRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- FallbackRoute IoTHub Fallback Route Args 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- FileUpload IoTHub File Upload Args 
- A file_uploadblock as defined below.
- Hostname string
- The hostname of the IotHub Resource.
- Identity
IoTHub Identity Args 
- An identityblock as defined below.
- LocalAuthentication boolEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- Location string
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- MinTls stringVersion 
- Name string
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- NetworkRule []IoSets THub Network Rule Set Args 
- A network_rule_setblock as defined below.
- PublicNetwork boolAccess Enabled 
- ResourceGroup stringName 
- 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
[]IoTHub Route Args 
- 
[]IoTHub Shared Access Policy Args 
- One or more shared_access_policyblocks as defined below.
- Sku
IoTHub Sku Args 
- A skublock as defined below.
- map[string]string
- Type string
- cloudTo IoDevice THub Cloud To Device 
- endpoints
List<IoTHub Endpoint> 
- An endpointblock as defined below.
- enrichments
List<IoTHub Enrichment> 
- eventHub StringEvents Endpoint 
- The EventHub compatible endpoint for events data
- eventHub StringEvents Namespace 
- The EventHub namespace for events data
- eventHub StringEvents Path 
- The EventHub compatible path for events data
- eventHub StringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- eventHub StringOperations Path 
- The EventHub compatible path for operational data
- eventHub IntegerPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- eventHub IntegerRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallbackRoute IoTHub Fallback Route 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- fileUpload IoTHub File Upload 
- A file_uploadblock as defined below.
- hostname String
- The hostname of the IotHub Resource.
- identity
IoTHub Identity 
- An identityblock as defined below.
- localAuthentication BooleanEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location String
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- minTls StringVersion 
- name String
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- networkRule List<IoSets THub Network Rule Set> 
- A network_rule_setblock as defined below.
- publicNetwork BooleanAccess Enabled 
- resourceGroup StringName 
- 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<IoTHub Route> 
- 
List<IoTHub Shared Access Policy> 
- One or more shared_access_policyblocks as defined below.
- sku
IoTHub Sku 
- A skublock as defined below.
- Map<String,String>
- type String
- cloudTo IoDevice THub Cloud To Device 
- endpoints
IoTHub Endpoint[] 
- An endpointblock as defined below.
- enrichments
IoTHub Enrichment[] 
- eventHub stringEvents Endpoint 
- The EventHub compatible endpoint for events data
- eventHub stringEvents Namespace 
- The EventHub namespace for events data
- eventHub stringEvents Path 
- The EventHub compatible path for events data
- eventHub stringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- eventHub stringOperations Path 
- The EventHub compatible path for operational data
- eventHub numberPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- eventHub numberRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallbackRoute IoTHub Fallback Route 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- fileUpload IoTHub File Upload 
- A file_uploadblock as defined below.
- hostname string
- The hostname of the IotHub Resource.
- identity
IoTHub Identity 
- An identityblock as defined below.
- localAuthentication booleanEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location string
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- minTls stringVersion 
- name string
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- networkRule IoSets THub Network Rule Set[] 
- A network_rule_setblock as defined below.
- publicNetwork booleanAccess Enabled 
- resourceGroup stringName 
- 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
IoTHub Route[] 
- 
IoTHub Shared Access Policy[] 
- One or more shared_access_policyblocks as defined below.
- sku
IoTHub Sku 
- A skublock as defined below.
- {[key: string]: string}
- type string
- cloud_to_ Iodevice THub Cloud To Device Args 
- endpoints
Sequence[IoTHub Endpoint Args] 
- An endpointblock as defined below.
- enrichments
Sequence[IoTHub Enrichment Args] 
- event_hub_ strevents_ endpoint 
- The EventHub compatible endpoint for events data
- event_hub_ strevents_ namespace 
- The EventHub namespace for events data
- event_hub_ strevents_ path 
- The EventHub compatible path for events data
- event_hub_ stroperations_ endpoint 
- The EventHub compatible endpoint for operational data
- event_hub_ stroperations_ path 
- The EventHub compatible path for operational data
- event_hub_ intpartition_ count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- event_hub_ intretention_ in_ days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallback_route IoTHub Fallback Route Args 
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- file_upload IoTHub File Upload Args 
- A file_uploadblock as defined below.
- hostname str
- The hostname of the IotHub Resource.
- identity
IoTHub Identity Args 
- An identityblock as defined below.
- local_authentication_ boolenabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location str
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- min_tls_ strversion 
- name str
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- network_rule_ Sequence[Iosets THub Network Rule Set Args] 
- A network_rule_setblock as defined below.
- public_network_ boolaccess_ enabled 
- resource_group_ strname 
- 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[IoTHub Route Args] 
- 
Sequence[IoTHub Shared Access Policy Args] 
- One or more shared_access_policyblocks as defined below.
- sku
IoTHub Sku Args 
- A skublock as defined below.
- Mapping[str, str]
- type str
- cloudTo Property MapDevice 
- endpoints List<Property Map>
- An endpointblock as defined below.
- enrichments List<Property Map>
- eventHub StringEvents Endpoint 
- The EventHub compatible endpoint for events data
- eventHub StringEvents Namespace 
- The EventHub namespace for events data
- eventHub StringEvents Path 
- The EventHub compatible path for events data
- eventHub StringOperations Endpoint 
- The EventHub compatible endpoint for operational data
- eventHub StringOperations Path 
- The EventHub compatible path for operational data
- eventHub NumberPartition Count 
- The number of device-to-cloud partitions used by backing event hubs. Must be between 2and128. Defaults to4.
- eventHub NumberRetention In Days 
- The event hub retention to use in days. Must be between 1and7. Defaults to1.
- fallbackRoute Property Map
- A - fallback_routeblock as defined below. If the fallback route is enabled, messages that don't match any of the supplied routes are automatically sent to this route. Defaults to messages/events.- Note: If - fallback_routeisn't explicitly specified, the fallback route wouldn't be enabled by default.
- fileUpload Property Map
- A file_uploadblock as defined below.
- hostname String
- The hostname of the IotHub Resource.
- identity Property Map
- An identityblock as defined below.
- localAuthentication BooleanEnabled 
- If false, SAS tokens with Iot hub scoped SAS keys cannot be used for authentication. Defaults to true.
- location String
- Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created.
- minTls StringVersion 
- name String
- Specifies the name of the IotHub resource. Changing this forces a new resource to be created.
- networkRule List<Property Map>Sets 
- A network_rule_setblock as defined below.
- publicNetwork BooleanAccess Enabled 
- resourceGroup StringName 
- 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>
- List<Property Map>
- One or more shared_access_policyblocks as defined below.
- sku Property Map
- A skublock as defined below.
- Map<String>
- type String
Supporting Types
IoTHubCloudToDevice, IoTHubCloudToDeviceArgs          
- DefaultTtl string
- The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- Feedbacks
List<IoTHub Cloud To Device Feedback> 
- A feedbackblock as defined below.
- MaxDelivery intCount 
- The maximum delivery count for cloud-to-device per-device queues. This value must be between 1and100. Defaults to10.
- DefaultTtl string
- The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- Feedbacks
[]IoTHub Cloud To Device Feedback 
- A feedbackblock as defined below.
- MaxDelivery intCount 
- The maximum delivery count for cloud-to-device per-device queues. This value must be between 1and100. Defaults to10.
- defaultTtl String
- The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- feedbacks
List<IoTHub Cloud To Device Feedback> 
- A feedbackblock as defined below.
- maxDelivery IntegerCount 
- The maximum delivery count for cloud-to-device per-device queues. This value must be between 1and100. Defaults to10.
- defaultTtl string
- The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- feedbacks
IoTHub Cloud To Device Feedback[] 
- A feedbackblock as defined below.
- maxDelivery numberCount 
- The maximum delivery count for cloud-to-device per-device queues. This value must be between 1and100. Defaults to10.
- default_ttl str
- The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- feedbacks
Sequence[IoTHub Cloud To Device Feedback] 
- A feedbackblock as defined below.
- max_delivery_ intcount 
- The maximum delivery count for cloud-to-device per-device queues. This value must be between 1and100. Defaults to10.
- defaultTtl String
- The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- feedbacks List<Property Map>
- A feedbackblock as defined below.
- maxDelivery NumberCount 
- The maximum delivery count for cloud-to-device per-device queues. This value must be between 1and100. Defaults to10.
IoTHubCloudToDeviceFeedback, IoTHubCloudToDeviceFeedbackArgs            
- LockDuration string
- The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
- MaxDelivery intCount 
- The maximum delivery count for the feedback queue. This value must be between 1and100. Defaults to10.
- TimeTo stringLive 
- The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- LockDuration string
- The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
- MaxDelivery intCount 
- The maximum delivery count for the feedback queue. This value must be between 1and100. Defaults to10.
- TimeTo stringLive 
- The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- lockDuration String
- The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
- maxDelivery IntegerCount 
- The maximum delivery count for the feedback queue. This value must be between 1and100. Defaults to10.
- timeTo StringLive 
- The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- lockDuration string
- The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
- maxDelivery numberCount 
- The maximum delivery count for the feedback queue. This value must be between 1and100. Defaults to10.
- timeTo stringLive 
- The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- lock_duration str
- The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
- max_delivery_ intcount 
- The maximum delivery count for the feedback queue. This value must be between 1and100. Defaults to10.
- time_to_ strlive 
- The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- lockDuration String
- The lock duration for the feedback queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT60S.
- maxDelivery NumberCount 
- The maximum delivery count for the feedback queue. This value must be between 1and100. Defaults to10.
- timeTo StringLive 
- The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
IoTHubEndpoint, IoTHubEndpointArgs      
- Name string
- The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events,operationsMonitoringEvents,fileNotificationsand$default.
- Type string
- The type of the endpoint. Possible values are AzureIotHub.StorageContainer,AzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- AuthenticationType string
- The type used to authenticate against the endpoint. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- BatchFrequency intIn Seconds 
- 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_typeiskeyBased.
- 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,AvroDeflateandJSON. Default value isAvro. This attribute is applicable for endpoint typeAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- EntityPath string
- Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- FileName stringFormat 
- File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
- IdentityId string
- The ID of the User Managed Identity used to authenticate against the endpoint. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - endpointsince it is not possible to grant access to the endpoint until after creation. The extracted resources- azurerm_iothub_endpoint_*can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.
- MaxChunk intSize In Bytes 
- 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.
- ResourceGroup stringName 
- The resource group in which the endpoint will be created.
- SubscriptionId string
- The subscription ID for the endpoint. - Note: When - subscription_idisn't specified it will be set to the subscription ID of the IoT Hub resource.
- Name string
- The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events,operationsMonitoringEvents,fileNotificationsand$default.
- Type string
- The type of the endpoint. Possible values are AzureIotHub.StorageContainer,AzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- AuthenticationType string
- The type used to authenticate against the endpoint. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- BatchFrequency intIn Seconds 
- 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_typeiskeyBased.
- 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,AvroDeflateandJSON. Default value isAvro. This attribute is applicable for endpoint typeAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- EntityPath string
- Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- FileName stringFormat 
- File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
- IdentityId string
- The ID of the User Managed Identity used to authenticate against the endpoint. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - endpointsince it is not possible to grant access to the endpoint until after creation. The extracted resources- azurerm_iothub_endpoint_*can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.
- MaxChunk intSize In Bytes 
- 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.
- ResourceGroup stringName 
- The resource group in which the endpoint will be created.
- SubscriptionId string
- The subscription ID for the endpoint. - Note: When - subscription_idisn't specified it will be set to the subscription ID of the IoT Hub resource.
- name String
- The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events,operationsMonitoringEvents,fileNotificationsand$default.
- type String
- The type of the endpoint. Possible values are AzureIotHub.StorageContainer,AzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- authenticationType String
- The type used to authenticate against the endpoint. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- batchFrequency IntegerIn Seconds 
- 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_typeiskeyBased.
- 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,AvroDeflateandJSON. Default value isAvro. This attribute is applicable for endpoint typeAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- entityPath String
- Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- fileName StringFormat 
- File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
- identityId String
- The ID of the User Managed Identity used to authenticate against the endpoint. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - endpointsince it is not possible to grant access to the endpoint until after creation. The extracted resources- azurerm_iothub_endpoint_*can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.
- maxChunk IntegerSize In Bytes 
- 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.
- resourceGroup StringName 
- The resource group in which the endpoint will be created.
- subscriptionId String
- The subscription ID for the endpoint. - Note: When - subscription_idisn't specified it will be set to the subscription ID of the IoT Hub resource.
- name string
- The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events,operationsMonitoringEvents,fileNotificationsand$default.
- type string
- The type of the endpoint. Possible values are AzureIotHub.StorageContainer,AzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- authenticationType string
- The type used to authenticate against the endpoint. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- batchFrequency numberIn Seconds 
- 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_typeiskeyBased.
- 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,AvroDeflateandJSON. Default value isAvro. This attribute is applicable for endpoint typeAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- entityPath string
- Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- fileName stringFormat 
- File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
- identityId string
- The ID of the User Managed Identity used to authenticate against the endpoint. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - endpointsince it is not possible to grant access to the endpoint until after creation. The extracted resources- azurerm_iothub_endpoint_*can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.
- maxChunk numberSize In Bytes 
- 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.
- resourceGroup stringName 
- The resource group in which the endpoint will be created.
- subscriptionId string
- The subscription ID for the endpoint. - Note: When - subscription_idisn't specified it will be set to the subscription ID of the IoT Hub resource.
- name str
- The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events,operationsMonitoringEvents,fileNotificationsand$default.
- type str
- The type of the endpoint. Possible values are AzureIotHub.StorageContainer,AzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- authentication_type str
- The type used to authenticate against the endpoint. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- batch_frequency_ intin_ seconds 
- 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_typeiskeyBased.
- 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,AvroDeflateandJSON. Default value isAvro. This attribute is applicable for endpoint typeAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- file_name_ strformat 
- File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
- identity_id str
- The ID of the User Managed Identity used to authenticate against the endpoint. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - endpointsince it is not possible to grant access to the endpoint until after creation. The extracted resources- azurerm_iothub_endpoint_*can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.
- max_chunk_ intsize_ in_ bytes 
- 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_ strname 
- The resource group in which the endpoint will be created.
- subscription_id str
- The subscription ID for the endpoint. - Note: When - subscription_idisn't specified it will be set to the subscription ID of the IoT Hub resource.
- name String
- The name of the endpoint. The name must be unique across endpoint types. The following names are reserved: events,operationsMonitoringEvents,fileNotificationsand$default.
- type String
- The type of the endpoint. Possible values are AzureIotHub.StorageContainer,AzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- authenticationType String
- The type used to authenticate against the endpoint. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- batchFrequency NumberIn Seconds 
- 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_typeiskeyBased.
- 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,AvroDeflateandJSON. Default value isAvro. This attribute is applicable for endpoint typeAzureIotHub.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_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- entityPath String
- Name of the Service Bus Queue/Topic or Event Hub. This attribute can only be specified and is mandatory when authentication_typeisidentityBasedfor endpoint typeAzureIotHub.ServiceBusQueue,AzureIotHub.ServiceBusTopicorAzureIotHub.EventHub.
- fileName StringFormat 
- File name format for the blob. All parameters are mandatory but can be reordered. This attribute is applicable for endpoint type AzureIotHub.StorageContainer. Defaults to{iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}.
- identityId String
- The ID of the User Managed Identity used to authenticate against the endpoint. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - endpointsince it is not possible to grant access to the endpoint until after creation. The extracted resources- azurerm_iothub_endpoint_*can be used to configure Endpoints with the IoT Hub's System-Assigned Managed Identity without the need for an update.
- maxChunk NumberSize In Bytes 
- 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.
- resourceGroup StringName 
- The resource group in which the endpoint will be created.
- subscriptionId String
- The subscription ID for the endpoint. - Note: When - subscription_idisn't specified it will be set to the subscription ID of the IoT Hub resource.
IoTHubEnrichment, IoTHubEnrichmentArgs      
- EndpointNames List<string>
- The list of endpoints which will be enriched.
- Key string
- The key of the enrichment.
- Value string
- The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex:$twin.tags.latitude)
- EndpointNames []string
- The list of endpoints which will be enriched.
- Key string
- The key of the enrichment.
- Value string
- The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex:$twin.tags.latitude)
- endpointNames List<String>
- The list of endpoints which will be enriched.
- key String
- The key of the enrichment.
- value String
- The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex:$twin.tags.latitude)
- endpointNames string[]
- The list of endpoints which will be enriched.
- key string
- The key of the enrichment.
- value string
- The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex:$twin.tags.latitude)
- endpoint_names Sequence[str]
- The list of endpoints which will be enriched.
- key str
- The key of the enrichment.
- value str
- The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex:$twin.tags.latitude)
- endpointNames List<String>
- The list of endpoints which will be enriched.
- key String
- The key of the enrichment.
- value String
- The value of the enrichment. Value can be any static string, the name of the IoT Hub sending the message (use $iothubname) or information from the device twin (ex:$twin.tags.latitude)
IoTHubFallbackRoute, IoTHubFallbackRouteArgs        
- Condition string
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- Enabled bool
- Used to specify whether the fallback route is enabled. Defaults to true.
- 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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents. Defaults toDeviceMessages.
- Condition string
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- Enabled bool
- Used to specify whether the fallback route is enabled. Defaults to true.
- 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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents. Defaults toDeviceMessages.
- condition String
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled Boolean
- Used to specify whether the fallback route is enabled. Defaults to true.
- 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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents. Defaults toDeviceMessages.
- condition string
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled boolean
- Used to specify whether the fallback route is enabled. Defaults to true.
- 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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents. Defaults toDeviceMessages.
- condition str
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled bool
- Used to specify whether the fallback route is enabled. Defaults to true.
- 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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents. Defaults toDeviceMessages.
- condition String
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled Boolean
- Used to specify whether the fallback route is enabled. Defaults to true.
- 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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents. Defaults toDeviceMessages.
IoTHubFileUpload, IoTHubFileUploadArgs        
- ConnectionString string
- The connection string for the Azure Storage account to which files are uploaded.
- ContainerName string
- The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
- AuthenticationType string
- The type used to authenticate against the storage account. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- DefaultTtl string
- The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- IdentityId string
- The ID of the User Managed Identity used to authenticate against the storage account. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - file_uploadsince it is not possible to grant access to the endpoint until after creation.
- LockDuration string
- The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
- MaxDelivery intCount 
- The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
- Notifications bool
- Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
- SasTtl string
- The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
- ConnectionString string
- The connection string for the Azure Storage account to which files are uploaded.
- ContainerName string
- The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
- AuthenticationType string
- The type used to authenticate against the storage account. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- DefaultTtl string
- The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- IdentityId string
- The ID of the User Managed Identity used to authenticate against the storage account. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - file_uploadsince it is not possible to grant access to the endpoint until after creation.
- LockDuration string
- The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
- MaxDelivery intCount 
- The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
- Notifications bool
- Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
- SasTtl string
- The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
- connectionString String
- The connection string for the Azure Storage account to which files are uploaded.
- containerName String
- The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
- authenticationType String
- The type used to authenticate against the storage account. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- defaultTtl String
- The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- identityId String
- The ID of the User Managed Identity used to authenticate against the storage account. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - file_uploadsince it is not possible to grant access to the endpoint until after creation.
- lockDuration String
- The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
- maxDelivery IntegerCount 
- The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
- notifications Boolean
- Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
- sasTtl String
- The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
- connectionString string
- The connection string for the Azure Storage account to which files are uploaded.
- containerName string
- The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
- authenticationType string
- The type used to authenticate against the storage account. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- defaultTtl string
- The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- identityId string
- The ID of the User Managed Identity used to authenticate against the storage account. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - file_uploadsince it is not possible to grant access to the endpoint until after creation.
- lockDuration string
- The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
- maxDelivery numberCount 
- The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
- notifications boolean
- Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
- sasTtl string
- The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
- connection_string str
- The connection string for the Azure Storage account to which files are uploaded.
- container_name str
- The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
- authentication_type str
- The type used to authenticate against the storage account. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- default_ttl str
- The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- identity_id str
- The ID of the User Managed Identity used to authenticate against the storage account. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - file_uploadsince it is not possible to grant access to the endpoint until after creation.
- lock_duration str
- The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
- max_delivery_ intcount 
- The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
- notifications bool
- Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
- sas_ttl str
- The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
- connectionString String
- The connection string for the Azure Storage account to which files are uploaded.
- containerName String
- The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified.
- authenticationType String
- The type used to authenticate against the storage account. Possible values are keyBasedandidentityBased. Defaults tokeyBased.
- defaultTtl String
- The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H.
- identityId String
- The ID of the User Managed Identity used to authenticate against the storage account. - Note: - identity_idcan only be specified when- authentication_typeis- identityBased. It must be one of the- identity_idsof the IoT Hub. If- identity_idis omitted when- authentication_typeis- identityBased, then the System-Assigned Managed Identity of the IoT Hub will be used.- Note: An IoT Hub can only be updated to use the System-Assigned Managed Identity for - file_uploadsince it is not possible to grant access to the endpoint until after creation.
- lockDuration String
- The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M.
- maxDelivery NumberCount 
- The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10.
- notifications Boolean
- Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false.
- sasTtl String
- The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H.
IoTHubIdentity, IoTHubIdentityArgs      
- Type string
- Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned,UserAssigned,SystemAssigned, UserAssigned(to enable both).
- IdentityIds List<string>
- Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. - Note: This is required when - typeis set to- UserAssignedor- SystemAssigned, UserAssigned.
- PrincipalId string
- The Principal ID associated with this Managed Service Identity.
- TenantId string
- The Tenant ID associated with this Managed Service Identity.
- Type string
- Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned,UserAssigned,SystemAssigned, UserAssigned(to enable both).
- IdentityIds []string
- Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. - Note: This is required when - typeis set to- UserAssignedor- SystemAssigned, UserAssigned.
- PrincipalId string
- The Principal ID associated with this Managed Service Identity.
- TenantId string
- The Tenant ID associated with this Managed Service Identity.
- type String
- Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned,UserAssigned,SystemAssigned, UserAssigned(to enable both).
- identityIds List<String>
- Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. - Note: This is required when - typeis set to- UserAssignedor- SystemAssigned, UserAssigned.
- principalId String
- The Principal ID associated with this Managed Service Identity.
- tenantId String
- The Tenant ID associated with this Managed Service Identity.
- type string
- Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned,UserAssigned,SystemAssigned, UserAssigned(to enable both).
- identityIds string[]
- Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. - Note: This is required when - typeis set to- UserAssignedor- SystemAssigned, UserAssigned.
- principalId string
- The Principal ID associated with this Managed Service Identity.
- tenantId string
- The Tenant ID associated with this Managed Service Identity.
- type str
- Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned,UserAssigned,SystemAssigned, UserAssigned(to enable both).
- identity_ids Sequence[str]
- Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. - Note: This is required when - typeis set to- UserAssignedor- SystemAssigned, UserAssigned.
- principal_id str
- The Principal ID associated with this Managed Service Identity.
- tenant_id str
- The Tenant ID associated with this Managed Service Identity.
- type String
- Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned,UserAssigned,SystemAssigned, UserAssigned(to enable both).
- identityIds List<String>
- Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. - Note: This is required when - typeis set to- UserAssignedor- SystemAssigned, UserAssigned.
- principalId String
- The Principal ID associated with this Managed Service Identity.
- tenantId String
- The Tenant ID associated with this Managed Service Identity.
IoTHubNetworkRuleSet, IoTHubNetworkRuleSetArgs          
- ApplyTo boolBuiltin Eventhub Endpoint 
- 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 toDefaultActionDeny.
- IpRules List<IoTHub Network Rule Set Ip Rule> 
- One or more ip_ruleblocks as defined below.
- ApplyTo boolBuiltin Eventhub Endpoint 
- 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 toDefaultActionDeny.
- IpRules []IoTHub Network Rule Set Ip Rule 
- One or more ip_ruleblocks as defined below.
- applyTo BooleanBuiltin Eventhub Endpoint 
- 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 toDefaultActionDeny.
- ipRules List<IoTHub Network Rule Set Ip Rule> 
- One or more ip_ruleblocks as defined below.
- applyTo booleanBuiltin Eventhub Endpoint 
- 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 toDefaultActionDeny.
- ipRules IoTHub Network Rule Set Ip Rule[] 
- One or more ip_ruleblocks as defined below.
- apply_to_ boolbuiltin_ eventhub_ endpoint 
- 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 toDefaultActionDeny.
- ip_rules Sequence[IoTHub Network Rule Set Ip Rule] 
- One or more ip_ruleblocks as defined below.
- applyTo BooleanBuiltin Eventhub Endpoint 
- 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 toDefaultActionDeny.
- ipRules List<Property Map>
- One or more ip_ruleblocks as defined below.
IoTHubNetworkRuleSetIpRule, IoTHubNetworkRuleSetIpRuleArgs              
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,DeviceJobLifecycleEventsandDigitalTwinChangeEvents.
- Condition string
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- Enabled bool
- Used to specify whether a route is enabled.
- EndpointNames []string
- The list of endpoints to which messages that satisfy the condition are routed.
- Name string
- The name of the route.
- Source string
- The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include:Invalid,DeviceMessages,TwinChangeEvents,DeviceLifecycleEvents,DeviceConnectionStateEvents,DeviceJobLifecycleEventsandDigitalTwinChangeEvents.
- Condition string
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled Boolean
- Used to specify whether a route is enabled.
- endpointNames List<String>
- The list of endpoints to which messages that satisfy the condition are routed.
- name String
- The name of the route.
- source String
- The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include:Invalid,DeviceMessages,TwinChangeEvents,DeviceLifecycleEvents,DeviceConnectionStateEvents,DeviceJobLifecycleEventsandDigitalTwinChangeEvents.
- condition String
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled boolean
- Used to specify whether a route is enabled.
- endpointNames string[]
- The list of endpoints to which messages that satisfy the condition are routed.
- name string
- The name of the route.
- source string
- The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include:Invalid,DeviceMessages,TwinChangeEvents,DeviceLifecycleEvents,DeviceConnectionStateEvents,DeviceJobLifecycleEventsandDigitalTwinChangeEvents.
- condition string
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled bool
- Used to specify whether a route is enabled.
- endpoint_names Sequence[str]
- The list of endpoints to which messages that satisfy the condition are routed.
- name str
- The name of the route.
- source str
- The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include:Invalid,DeviceMessages,TwinChangeEvents,DeviceLifecycleEvents,DeviceConnectionStateEvents,DeviceJobLifecycleEventsandDigitalTwinChangeEvents.
- condition str
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
- enabled Boolean
- Used to specify whether a route is enabled.
- endpointNames List<String>
- The list of endpoints to which messages that satisfy the condition are routed.
- name String
- The name of the route.
- source String
- The source that the routing rule is to be applied to, such as DeviceMessages. Possible values include:Invalid,DeviceMessages,TwinChangeEvents,DeviceLifecycleEvents,DeviceConnectionStateEvents,DeviceJobLifecycleEventsandDigitalTwinChangeEvents.
- condition String
- The condition that is evaluated to apply the routing rule. Defaults to true. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language.
IoTHubSharedAccessPolicy, IoTHubSharedAccessPolicyArgs          
- KeyName string
- The name of the shared access policy.
- Permissions string
- The permissions assigned to the shared access policy.
- PrimaryKey string
- The primary key.
- SecondaryKey string
- The secondary key.
- KeyName string
- The name of the shared access policy.
- Permissions string
- The permissions assigned to the shared access policy.
- PrimaryKey string
- The primary key.
- SecondaryKey string
- The secondary key.
- keyName String
- The name of the shared access policy.
- permissions String
- The permissions assigned to the shared access policy.
- primaryKey String
- The primary key.
- secondaryKey String
- The secondary key.
- keyName string
- The name of the shared access policy.
- permissions string
- The permissions assigned to the shared access policy.
- primaryKey string
- The primary key.
- secondaryKey string
- The secondary key.
- key_name str
- The name of the shared access policy.
- permissions str
- The permissions assigned to the shared access policy.
- primary_key str
- The primary key.
- secondary_key str
- The secondary key.
- keyName String
- The name of the shared access policy.
- permissions String
- The permissions assigned to the shared access policy.
- primaryKey String
- The primary key.
- secondaryKey String
- The secondary key.
IoTHubSku, IoTHubSkuArgs      
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 azurermTerraform Provider.
