Module iot

@pulumi/azure > iot

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-azure repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-azurerm repo.

class Certificate

extends CustomResource

Manages an IoT Device Provisioning Service Certificate.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleDps = new azure.iot.Dps("example", {
    location: azurerm_resource_group_test.location,
    name: "example",
    resourceGroupName: azurerm_resource_group_test.name,
    sku: {
        capacity: 1,
        name: "S1",
        tier: "Standard",
    },
});
const exampleResourceGroup = new azure.core.ResourceGroup("example", {
    location: "West US",
    name: "resourceGroup1",
});
const exampleCertificate = new azure.iot.Certificate("example", {
    certificateContent: (() => {
        throw "tf2pulumi error: NYI: call to filebase64";
        return (() => { throw "NYI: call to filebase64"; })();
    })(),
    iotDpsName: exampleDps.name,
    name: "example",
    resourceGroupName: exampleResourceGroup.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/iot_dps_certificate.html.markdown.

constructor

new Certificate(name: string, args: CertificateArgs, opts?: pulumi.CustomResourceOptions)

Create a Certificate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CertificateState, opts?: pulumi.CustomResourceOptions): Certificate

Get an existing Certificate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Certificate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property certificateContent

public certificateContent: pulumi.Output<string>;

The Base-64 representation of the X509 leaf certificate .cer file or just a .pem file content.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property iotDpsName

public iotDpsName: pulumi.Output<string>;

The name of the IoT Device Provisioning Service that this certificate will be attached to. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the Iot Device Provisioning Service Certificate resource. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group under which the Iot Device Provisioning Service Certificate resource has to be created. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class ConsumerGroup

extends CustomResource

Manages a Consumer Group within an IotHub

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
    name: "resourceGroup1",
});
const testIoTHub = new azure.iot.IoTHub("test", {
    location: testResourceGroup.location,
    name: "test",
    resourceGroupName: testResourceGroup.name,
    sku: {
        capacity: 1,
        name: "S1",
        tier: "Standard",
    },
    tags: {
        purpose: "testing",
    },
});
const testConsumerGroup = new azure.iot.ConsumerGroup("test", {
    eventhubEndpointName: "events",
    iothubName: testIoTHub.name,
    name: "test",
    resourceGroupName: azurerm_resource_group_foo.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/iothub_consumer_group.html.markdown.

constructor

new ConsumerGroup(name: string, args: ConsumerGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a ConsumerGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ConsumerGroupState, opts?: pulumi.CustomResourceOptions): ConsumerGroup

Get an existing ConsumerGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ConsumerGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property eventhubEndpointName

public eventhubEndpointName: pulumi.Output<string>;

The name of the Event Hub-compatible endpoint in the IoT hub. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property iothubName

public iothubName: pulumi.Output<string>;

The name of the IoT Hub. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of this Consumer Group. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group that contains the IoT hub. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Dps

extends CustomResource

Manages an IoT Device Provisioning Service.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("example", {
    location: "West US",
    name: "resourceGroup1",
});
const exampleDps = new azure.iot.Dps("example", {
    location: exampleResourceGroup.location,
    name: "example",
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        capacity: 1,
        name: "S1",
        tier: "Standard",
    },
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/iot_dps.html.markdown.

constructor

new Dps(name: string, args: DpsArgs, opts?: pulumi.CustomResourceOptions)

Create a Dps resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DpsState, opts?: pulumi.CustomResourceOptions): Dps

Get an existing Dps resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Dps. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource has to be createc. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the Iot Device Provisioning Service resource. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group under which the Iot Device Provisioning Service resource has to be created. Changing this forces a new resource to be created.

property sku

public sku: pulumi.Output<{
    capacity: number;
    name: string;
    tier: string;
}>;

A sku block as defined below.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class IoTHub

extends CustomResource

Manages an IotHub

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
    name: "resourceGroup1",
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: testResourceGroup.location,
    name: "teststa",
    resourceGroupName: testResourceGroup.name,
});
const testIoTHub = new azure.iot.IoTHub("test", {
    endpoints: [{
        batchFrequencyInSeconds: 60,
        connectionString: testAccount.primaryBlobConnectionString,
        containerName: "test",
        encoding: "Avro",
        fileNameFormat: "{iothub}/{partition}_{YYYY}_{MM}_{DD}_{HH}_{mm}",
        maxChunkSizeInBytes: 10485760,
        name: "export",
        type: "AzureIotHub.StorageContainer",
    }],
    fallbackRoute: {
        enabled: true,
    },
    location: testResourceGroup.location,
    name: "test",
    resourceGroupName: testResourceGroup.name,
    routes: [{
        condition: "true",
        enabled: true,
        endpointNames: ["export"],
        name: "export",
        source: "DeviceMessages",
    }],
    sku: {
        capacity: 1,
        name: "S1",
        tier: "Standard",
    },
    tags: {
        purpose: "testing",
    },
});
const testContainer = new azure.storage.Container("test", {
    containerAccessType: "private",
    name: "test",
    resourceGroupName: testResourceGroup.name,
    storageAccountName: testAccount.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/iothub.html.markdown.

constructor

new IoTHub(name: string, args: IoTHubArgs, opts?: pulumi.CustomResourceOptions)

Create a IoTHub resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: IoTHubState, opts?: pulumi.CustomResourceOptions): IoTHub

Get an existing IoTHub resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getEventFunction

getEventFunction(name: string, args: EventHubCallback | GetIoTHubFunctionArgs): IoTHubFunction

Creates a new Function triggered by events in the given IoT Hub using the callback provided. The Function should be used as part of a [MultiCallbackFunctionApp].

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of IoTHub. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method onEvent

onEvent(name: string, args: EventHubCallback | IoTHubSubscriptionArgs, opts?: pulumi.ComponentResourceOptions): IoTHubEventSubscription

Subscribes to events logged to this Event Hub to the handler provided, along with options to control the behavior of the subscription.

property endpoints

public endpoints: pulumi.Output<{
    batchFrequencyInSeconds: undefined | number;
    connectionString: string;
    containerName: undefined | string;
    encoding: undefined | string;
    fileNameFormat: undefined | string;
    maxChunkSizeInBytes: undefined | number;
    name: string;
    type: string;
}[] | undefined>;

An endpoint block as defined below.

property eventHubEventsEndpoint

public eventHubEventsEndpoint: pulumi.Output<string>;

The EventHub compatible endpoint for events data

property eventHubEventsPath

public eventHubEventsPath: pulumi.Output<string>;

The EventHub compatible path for events data

property eventHubOperationsEndpoint

public eventHubOperationsEndpoint: pulumi.Output<string>;

The EventHub compatible endpoint for operational data

property eventHubOperationsPath

public eventHubOperationsPath: pulumi.Output<string>;

The EventHub compatible path for operational data

property fallbackRoute

public fallbackRoute: pulumi.Output<{
    condition: undefined | string;
    enabled: boolean;
    endpointNames: string[];
    source: undefined | string;
}>;

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

property hostname

public hostname: pulumi.Output<string>;

The hostname of the IotHub Resource.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipFilterRules

public ipFilterRules: pulumi.Output<{
    action: string;
    ipMask: string;
    name: string;
}[] | undefined>;

One or more ipFilterRule blocks as defined below.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource has to be createc. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the IotHub resource. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.

property routes

public routes: pulumi.Output<{
    condition: undefined | string;
    enabled: boolean;
    endpointNames: string[];
    name: string;
    source: string;
}[] | undefined>;

A route block as defined below.

property sharedAccessPolicies

public sharedAccessPolicies: pulumi.Output<{
    keyName: string;
    permissions: string;
    primaryKey: string;
    secondaryKey: string;
}[]>;

One or more sharedAccessPolicy blocks as defined below.

property sku

public sku: pulumi.Output<{
    capacity: number;
    name: string;
    tier: string;
}>;

A sku block as defined below.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property type

public type: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class IoTHubEventSubscription

extends EventSubscription<EventHubContext, string, appservice.FunctionDefaultResponse>

constructor

new IoTHubEventSubscription(name: string, iotHub: IoTHub, args: IoTHubSubscriptionArgs, opts: pulumi.ComponentResourceOptions)

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

method registerOutputs

protected registerOutputs(outputs?: Inputs | Promise<Inputs> | Output<Inputs>): void

property functionApp

public functionApp: CallbackFunctionApp<EventHubContext, string, appservice.FunctionDefaultResponse>;

property iotHub

iotHub: IoTHub;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class IoTHubFunction

extends Function<EventHubContext, string, appservice.FunctionDefaultResponse>

Azure Function triggered by an IoT Hub.

constructor

new IoTHubFunction(name: string, args: IoTHubFunctionArgs)

property appSettings

public appSettings?: pulumi.Input<{[key: string]: string}>;

Application settings required by the function.

property bindings

public bindings: pulumi.Input<BindingDefinition[]>;

An array of function binding definitions.

property callback

public callback: CallbackArgs<EventHubContext, string, appservice.FunctionDefaultResponse>;

Function callback.

property name

public name: string;

Function name.

class SharedAccessPolicy

extends CustomResource

Manages an IotHub Shared Access Policy

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("example", {
    location: "West US",
    name: "resourceGroup1",
});
const exampleIoTHub = new azure.iot.IoTHub("example", {
    location: exampleResourceGroup.location,
    name: "example",
    resourceGroupName: exampleResourceGroup.name,
    sku: {
        capacity: 1,
        name: "S1",
        tier: "Standard",
    },
});
const exampleSharedAccessPolicy = new azure.iot.SharedAccessPolicy("example", {
    iothubName: exampleIoTHub.name,
    name: "example",
    registryRead: true,
    registryWrite: true,
    resourceGroupName: exampleResourceGroup.name,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-azurerm/blob/master/website/docs/r/iothub_shared_access_policy.html.markdown.

constructor

new SharedAccessPolicy(name: string, args: SharedAccessPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a SharedAccessPolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SharedAccessPolicyState, opts?: pulumi.CustomResourceOptions): SharedAccessPolicy

Get an existing SharedAccessPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SharedAccessPolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property deviceConnect

public deviceConnect: pulumi.Output<boolean | undefined>;

Adds DeviceConnect permission to this Shared Access Account. It allows sending and receiving on the device-side endpoints.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property iothubName

public iothubName: pulumi.Output<string>;

The name of the IoTHub to which this Shared Access Policy belongs. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the IotHub Shared Access Policy resource. Changing this forces a new resource to be created.

property primaryConnectionString

public primaryConnectionString: pulumi.Output<string>;

The primary connection string of the Shared Access Policy.

property primaryKey

public primaryKey: pulumi.Output<string>;

The primary key used to create the authentication token.

property registryRead

public registryRead: pulumi.Output<boolean | undefined>;

Adds RegistryRead permission to this Shared Access Account. It allows read access to the identity registry.

property registryWrite

public registryWrite: pulumi.Output<boolean | undefined>;

Adds RegistryWrite permission to this Shared Access Account. It allows write access to the identity registry.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group under which the IotHub Shared Access Policy resource has to be created. Changing this forces a new resource to be created.

property secondaryConnectionString

public secondaryConnectionString: pulumi.Output<string>;

The secondary connection string of the Shared Access Policy.

property secondaryKey

public secondaryKey: pulumi.Output<string>;

The secondary key used to create the authentication token.

property serviceConnect

public serviceConnect: pulumi.Output<boolean | undefined>;

Adds ServiceConnect permission to this Shared Access Account. It allows sending and receiving on the cloud-side endpoints.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

interface CertificateArgs

The set of arguments for constructing a Certificate resource.

property certificateContent

certificateContent: pulumi.Input<string>;

The Base-64 representation of the X509 leaf certificate .cer file or just a .pem file content.

property iotDpsName

iotDpsName: pulumi.Input<string>;

The name of the IoT Device Provisioning Service that this certificate will be attached to. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Iot Device Provisioning Service Certificate resource. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group under which the Iot Device Provisioning Service Certificate resource has to be created. Changing this forces a new resource to be created.

interface CertificateState

Input properties used for looking up and filtering Certificate resources.

property certificateContent

certificateContent?: pulumi.Input<string>;

The Base-64 representation of the X509 leaf certificate .cer file or just a .pem file content.

property iotDpsName

iotDpsName?: pulumi.Input<string>;

The name of the IoT Device Provisioning Service that this certificate will be attached to. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Iot Device Provisioning Service Certificate resource. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group under which the Iot Device Provisioning Service Certificate resource has to be created. Changing this forces a new resource to be created.

interface ConsumerGroupArgs

The set of arguments for constructing a ConsumerGroup resource.

property eventhubEndpointName

eventhubEndpointName: pulumi.Input<string>;

The name of the Event Hub-compatible endpoint in the IoT hub. Changing this forces a new resource to be created.

property iothubName

iothubName: pulumi.Input<string>;

The name of the IoT Hub. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of this Consumer Group. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group that contains the IoT hub. Changing this forces a new resource to be created.

interface ConsumerGroupState

Input properties used for looking up and filtering ConsumerGroup resources.

property eventhubEndpointName

eventhubEndpointName?: pulumi.Input<string>;

The name of the Event Hub-compatible endpoint in the IoT hub. Changing this forces a new resource to be created.

property iothubName

iothubName?: pulumi.Input<string>;

The name of the IoT Hub. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of this Consumer Group. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group that contains the IoT hub. Changing this forces a new resource to be created.

interface DpsArgs

The set of arguments for constructing a Dps resource.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource has to be createc. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Iot Device Provisioning Service resource. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group under which the Iot Device Provisioning Service resource has to be created. Changing this forces a new resource to be created.

property sku

sku: pulumi.Input<{
    capacity: pulumi.Input<number>;
    name: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface DpsState

Input properties used for looking up and filtering Dps resources.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource has to be createc. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Iot Device Provisioning Service resource. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group under which the Iot Device Provisioning Service resource has to be created. Changing this forces a new resource to be created.

property sku

sku?: pulumi.Input<{
    capacity: pulumi.Input<number>;
    name: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface GetIoTHubFunctionArgs

extends CallbackFunctionArgs<EventHubContext, any, appservice.FunctionDefaultResponse>

property callback

callback?: Callback<EventHubContext, any, appservice.FunctionDefaultResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<EventHubContext, any, appservice.FunctionDefaultResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property cardinality

cardinality?: pulumi.Input<“many” | “one”>;

Set to ‘many’ in order to enable batching. If omitted or set to ‘one’, single message passed to function.

property consumerGroup

consumerGroup?: ConsumerGroup;

Optional Consumer Group to subscribe the Function to. If not present, the default consumer group will be used.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property iotHub

iotHub: IoTHub;

IoT Hub to subscribe the Function to.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface IoTHubArgs

The set of arguments for constructing a IoTHub resource.

property endpoints

endpoints?: pulumi.Input<pulumi.Input<{
    batchFrequencyInSeconds: pulumi.Input<number>;
    connectionString: pulumi.Input<string>;
    containerName: pulumi.Input<string>;
    encoding: pulumi.Input<string>;
    fileNameFormat: pulumi.Input<string>;
    maxChunkSizeInBytes: pulumi.Input<number>;
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>[]>;

An endpoint block as defined below.

property fallbackRoute

fallbackRoute?: pulumi.Input<{
    condition: pulumi.Input<string>;
    enabled: pulumi.Input<boolean>;
    endpointNames: pulumi.Input<pulumi.Input<string>[]>;
    source: pulumi.Input<string>;
}>;

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

property ipFilterRules

ipFilterRules?: pulumi.Input<pulumi.Input<{
    action: pulumi.Input<string>;
    ipMask: pulumi.Input<string>;
    name: pulumi.Input<string>;
}>[]>;

One or more ipFilterRule blocks as defined below.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource has to be createc. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the IotHub resource. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.

property routes

routes?: pulumi.Input<pulumi.Input<{
    condition: pulumi.Input<string>;
    enabled: pulumi.Input<boolean>;
    endpointNames: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    source: pulumi.Input<string>;
}>[]>;

A route block as defined below.

property sku

sku: pulumi.Input<{
    capacity: pulumi.Input<number>;
    name: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface IoTHubFunctionArgs

extends GetIoTHubFunctionArgs

property callback

callback?: Callback<EventHubContext, any, appservice.FunctionDefaultResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<EventHubContext, any, appservice.FunctionDefaultResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property cardinality

cardinality?: pulumi.Input<“many” | “one”>;

Set to ‘many’ in order to enable batching. If omitted or set to ‘one’, single message passed to function.

property consumerGroup

consumerGroup?: ConsumerGroup;

Optional Consumer Group to subscribe the Function to. If not present, the default consumer group will be used.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property iotHub

iotHub: IoTHub;

IoT Hub to subscribe the Function to.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

interface IoTHubState

Input properties used for looking up and filtering IoTHub resources.

property endpoints

endpoints?: pulumi.Input<pulumi.Input<{
    batchFrequencyInSeconds: pulumi.Input<number>;
    connectionString: pulumi.Input<string>;
    containerName: pulumi.Input<string>;
    encoding: pulumi.Input<string>;
    fileNameFormat: pulumi.Input<string>;
    maxChunkSizeInBytes: pulumi.Input<number>;
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>[]>;

An endpoint block as defined below.

property eventHubEventsEndpoint

eventHubEventsEndpoint?: pulumi.Input<string>;

The EventHub compatible endpoint for events data

property eventHubEventsPath

eventHubEventsPath?: pulumi.Input<string>;

The EventHub compatible path for events data

property eventHubOperationsEndpoint

eventHubOperationsEndpoint?: pulumi.Input<string>;

The EventHub compatible endpoint for operational data

property eventHubOperationsPath

eventHubOperationsPath?: pulumi.Input<string>;

The EventHub compatible path for operational data

property fallbackRoute

fallbackRoute?: pulumi.Input<{
    condition: pulumi.Input<string>;
    enabled: pulumi.Input<boolean>;
    endpointNames: pulumi.Input<pulumi.Input<string>[]>;
    source: pulumi.Input<string>;
}>;

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

property hostname

hostname?: pulumi.Input<string>;

The hostname of the IotHub Resource.

property ipFilterRules

ipFilterRules?: pulumi.Input<pulumi.Input<{
    action: pulumi.Input<string>;
    ipMask: pulumi.Input<string>;
    name: pulumi.Input<string>;
}>[]>;

One or more ipFilterRule blocks as defined below.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource has to be createc. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the IotHub resource. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created.

property routes

routes?: pulumi.Input<pulumi.Input<{
    condition: pulumi.Input<string>;
    enabled: pulumi.Input<boolean>;
    endpointNames: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    source: pulumi.Input<string>;
}>[]>;

A route block as defined below.

property sharedAccessPolicies

sharedAccessPolicies?: pulumi.Input<pulumi.Input<{
    keyName: pulumi.Input<string>;
    permissions: pulumi.Input<string>;
    primaryKey: pulumi.Input<string>;
    secondaryKey: pulumi.Input<string>;
}>[]>;

One or more sharedAccessPolicy blocks as defined below.

property sku

sku?: pulumi.Input<{
    capacity: pulumi.Input<number>;
    name: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property type

type?: pulumi.Input<string>;

interface IoTHubSubscriptionArgs

extends GetIoTHubFunctionArgs, CallbackFunctionAppArgs<EventHubContext, any, appservice.FunctionDefaultResponse>

property account

account?: storageForTypesOnly.Account;

The storage account to use where the zip-file blob for the FunctionApp will be located. If not provided, a new storage account will create. It will be a ‘Standard’, ‘LRS’, ‘StorageV2’ account.

property appSettings

appSettings?: pulumi.Input<{[key: string]: any}>;

A key-value pair of App Settings.

property callback

callback?: Callback<EventHubContext, any, appservice.FunctionDefaultResponse>;

The Javascript function instance to use as the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

property callbackFactory

callbackFactory?: CallbackFactory<EventHubContext, any, appservice.FunctionDefaultResponse>;

The Javascript function instance that will be called to produce the function that is the entrypoint for the Azure FunctionApp. Either [callback] or [callbackFactory] must be provided.

This form is useful when there is expensive initialization work that should only be executed once. The factory-function will be invoked once when the final Azure FunctionApp module is loaded. It can run whatever code it needs, and will end by returning the actual function that the Azure will call into each time the FunctionApp it is is invoked.

property cardinality

cardinality?: pulumi.Input<“many” | “one”>;

Set to ‘many’ in order to enable batching. If omitted or set to ‘one’, single message passed to function.

property clientAffinityEnabled

clientAffinityEnabled?: pulumi.Input<boolean>;

Should the Function App send session affinity cookies, which route client requests in the same session to the same instance?

property codePathOptions

codePathOptions?: pulumi.runtime.CodePathOptions;

Options to control which files and packages are included with the serialized FunctionApp code.

property connectionStrings

connectionStrings?: pulumi.Input<pulumi.Input<{
    name: pulumi.Input<string>;
    type: pulumi.Input<string>;
    value: pulumi.Input<string>;
}>[]>;

An connection_string block as defined below.

property consumerGroup

consumerGroup?: ConsumerGroup;

Optional Consumer Group to subscribe the Function to. If not present, the default consumer group will be used.

property container

container?: storageForTypesOnly.Container;

The container to use where the zip-file blob for the FunctionApp will be located. If not provided, the root container of the storage account will be used.

property enableBuiltinLogging

enableBuiltinLogging?: pulumi.Input<boolean>;

Should the built-in logging of this Function App be enabled? Defaults to true.

property enabled

enabled?: pulumi.Input<boolean>;

Is the Function App enabled?

property hostSettings

hostSettings?: HostSettings;

Host configuration options.

property httpsOnly

httpsOnly?: pulumi.Input<boolean>;

Can the Function App only be accessed via HTTPS? Defaults to false.

property identity

identity?: pulumi.Input<{
    principalId: pulumi.Input<string>;
    tenantId: pulumi.Input<string>;
    type: pulumi.Input<string>;
}>;

An identity block as defined below.

property inputs

inputs?: InputBindingSettings[];

Input bindings.

property iotHub

iotHub: IoTHub;

IoT Hub to subscribe the Function to.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the Function App.

property nodeVersion

nodeVersion?: pulumi.Input<string>;

Controls the value of WEBSITE_NODE_DEFAULT_VERSION in appSettings. If not provided, defaults to 8.11.1.

property outputs

outputs?: OutputBindingSettings[];

Output bindings.

property plan

plan?: appservice.Plan;

The App Service Plan within which to create this Function App. Changing this forces a new resource to be created.

If not provided, a default “Consumption” plan will be created. See: https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale#consumption-plan for more details.

property resourceGroup

resourceGroup?: core.ResourceGroup;

The resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName].

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the event subscription. [resourceGroup] takes precedence over [resourceGroupName]. If none of the two is supplied, the IoT Hub’s resource group will be used.

property siteConfig

siteConfig?: pulumi.Input<{
    alwaysOn: pulumi.Input<boolean>;
    linuxFxVersion: pulumi.Input<string>;
    use32BitWorkerProcess: pulumi.Input<boolean>;
    websocketsEnabled: pulumi.Input<boolean>;
}>;

A site_config object as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property version

version?: pulumi.Input<string>;

The runtime version associated with the Function App. Defaults to ~2.

interface SharedAccessPolicyArgs

The set of arguments for constructing a SharedAccessPolicy resource.

property deviceConnect

deviceConnect?: pulumi.Input<boolean>;

Adds DeviceConnect permission to this Shared Access Account. It allows sending and receiving on the device-side endpoints.

property iothubName

iothubName: pulumi.Input<string>;

The name of the IoTHub to which this Shared Access Policy belongs. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the IotHub Shared Access Policy resource. Changing this forces a new resource to be created.

property registryRead

registryRead?: pulumi.Input<boolean>;

Adds RegistryRead permission to this Shared Access Account. It allows read access to the identity registry.

property registryWrite

registryWrite?: pulumi.Input<boolean>;

Adds RegistryWrite permission to this Shared Access Account. It allows write access to the identity registry.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group under which the IotHub Shared Access Policy resource has to be created. Changing this forces a new resource to be created.

property serviceConnect

serviceConnect?: pulumi.Input<boolean>;

Adds ServiceConnect permission to this Shared Access Account. It allows sending and receiving on the cloud-side endpoints.

interface SharedAccessPolicyState

Input properties used for looking up and filtering SharedAccessPolicy resources.

property deviceConnect

deviceConnect?: pulumi.Input<boolean>;

Adds DeviceConnect permission to this Shared Access Account. It allows sending and receiving on the device-side endpoints.

property iothubName

iothubName?: pulumi.Input<string>;

The name of the IoTHub to which this Shared Access Policy belongs. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the IotHub Shared Access Policy resource. Changing this forces a new resource to be created.

property primaryConnectionString

primaryConnectionString?: pulumi.Input<string>;

The primary connection string of the Shared Access Policy.

property primaryKey

primaryKey?: pulumi.Input<string>;

The primary key used to create the authentication token.

property registryRead

registryRead?: pulumi.Input<boolean>;

Adds RegistryRead permission to this Shared Access Account. It allows read access to the identity registry.

property registryWrite

registryWrite?: pulumi.Input<boolean>;

Adds RegistryWrite permission to this Shared Access Account. It allows write access to the identity registry.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group under which the IotHub Shared Access Policy resource has to be created. Changing this forces a new resource to be created.

property secondaryConnectionString

secondaryConnectionString?: pulumi.Input<string>;

The secondary connection string of the Shared Access Policy.

property secondaryKey

secondaryKey?: pulumi.Input<string>;

The secondary key used to create the authentication token.

property serviceConnect

serviceConnect?: pulumi.Input<boolean>;

Adds ServiceConnect permission to this Shared Access Account. It allows sending and receiving on the cloud-side endpoints.