This overview introduces the key concepts around the options to extend an Azure IoT solution. Each section includes links to content that provides further detail and guidance.
Extensibility scenarios
Extensibility scenarios for IoT solutions include:
Analysis and visualization
A typical IoT solution includes the analysis and visualization of the data from your devices and assets to enable business insights. To learn more, see Analyze and visualize your IoT data.
Integration with other services
An IoT solution might include other systems such as asset management, work scheduling, and control automation systems. Such systems might:
- Use data from your IoT assets or devices as input to predictive maintenance systems that generate entries in a work scheduling system.
- Update the device registry to ensure it has up to date data from your asset management system.
- Send messages to your assets or devices to control their behavior based on rules in a control automation system.
Extensibility mechanisms
The following sections describe the key mechanisms available to extend your IoT solution.
The following diagram shows a high-level view of the components in a typical edge-based IoT solution. This article focuses on the extensibility points highlighted in the diagram:
In Azure IoT, solution extensibility refers to the ways you can add to the built-in functionality of the edge and cloud services and build integrations with other services.
Message broker
Azure IoT Operations includes an MQTT broker that routes messages from the connectors to data flows that connect to cloud endpoints. You can deploy your own pods to the cluster to interact with the message broker to:
- Use custom message processing logic on the MQTT messages.
- Build custom application logic to run at the edge.
The message broker is based on the MQTT protocol and supports APIs and SDKs such as:
The message broker includes a state store that lets you manage distributed application state across the edge cluster.
Cloud services
The northbound connectors in Azure IoT Operations let you route messages from your assets to different cloud endpoints. Routing messages enables you to build integrations with other services and to export data for analysis and visualization.
REST APIs
The Azure IoT Operations REST API provides the following capabilities that are useful for extending your IoT solution:
- Manage the message broker.
- Manage your data flows.
The following diagram shows a high-level view of the components in a typical cloud-based IoT solution. This article focuses on the extensibility points highlighted in the diagram:
In Azure IoT, solution extensibility refers to the ways you can add to the built-in functionality of the IoT cloud services and build integrations with other services.
Service APIs (IoT Hub)
IoT Hub and the Device Provisioning Service (DPS) provide a set of service APIs that you can use to manage and interact with your hub and devices. These APIs include:
- Registry management
- Interacting with device twins and digital twins
- Sending cloud-to-device messages and calling commands
- Managing enrollment groups (DPS)
- Managing initial device twin state (DPS)
For a list of the available service APIs, see Service SDKs.
REST APIs (IoT Central)
The IoT Central REST API provides the following capabilities that are useful for extending your IoT solution:
- Query the devices connected to your application
- Manage device templates and deployment manifests
- Manage devices and device groups
- Control devices by interacting with device properties and calling commands
To learn more, see IoT Central REST API.
Routing and data export
IoT Hub and IoT Central both let you route device telemetry to different endpoints. Routing telemetry enables you to build integrations with other services and to export data for analysis and visualization.
In addition to device telemetry, both IoT Hub and IoT Central can send property update and device connection status messages to other endpoints. Routing these messages enables you to build integrations with other services that need device status information:
- IoT Hub routing can send device telemetry, property change events, device connectivity events, and device lifecycle events to destinations such as Azure Event Hubs, Azure Blob Storage, and Cosmos DB.
- IoT Hub Event Grid integration uses Azure Event Grid to distribute IoT Hub events such as device connectivity, device lifecycle, and telemetry events to other Azure services.
- IoT Central rules can send device telemetry and property values to webhooks, Microsoft Power Automate, and Azure Logic Apps.
- IoT Central data export can send device telemetry, property change events, device connectivity events, and device lifecycle events to destinations such Azure Blob Storage, Azure Data Explorer, Azure Event Hubs, and webhooks.
IoT Central application templates
The IoT Central application templates provide a starting point for building IoT solutions that include integrations with other services. You can use the templates to create an application that includes resources that are relevant to your solution. To learn more, see IoT Central application templates.
Related content