agentsclimarketplace

Azure iot hub

Skill MicrosoftDocs/Agent-Skills/skills/azure-iot-hub

Expert knowledge for Azure IoT Hub development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when using IoT Hub/DPS device provisioning, twins/methods/jobs, routing/endpoints, Device Update, or Cosmos DB sinks, and other Azure IoT Hub related development tasks. Not for Azure IoT (use azure-iot), Azure IoT Central (use azure-iot-central), Azure IoT Edge (use azure-iot-edge), Azure Defender For Iot (use azure-defender-for-iot).From its SKILL.md

Install
npx -y skills add MicrosoftDocs/Agent-Skills --skill azure-iot-hub

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

21.9 KB, ~5.0k tokens by cl100k_base, as published. Nobody here has run it

Azure IoT Hub Skill

This skill provides expert guidance for Azure IoT Hub. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.

How to Use This Skill

IMPORTANT for Agent: Use the Category Index below to locate relevant sections. For categories with line ranges (e.g., L35-L120), use read_file with the specified lines. For categories with file links (e.g., [security.md](security.md)), use read_file on the linked reference file

IMPORTANT for Agent: If metadata.generated_at is more than 3 months old, suggest the user pull the latest version from the repository. If mcp_microsoftdocs tools are not available, suggest the user install it: Installation Guide

This skill requires network access to fetch documentation content:

  • Preferred: Use mcp_microsoftdocs:microsoft_docs_fetch with query string from=learn-agent-skill. Returns Markdown.
  • Fallback: Use fetch_webpage with query string from=learn-agent-skill&accept=text/markdown. Returns Markdown.

Category Index

CategoryLinesDescription
TroubleshootingL37-L53Diagnosing and fixing IoT Hub/DPS connectivity, routing, proxy, and storage issues; interpreting error codes and collecting/using Device Update and device diagnostic logs.
Best PracticesL54-L63Best practices for secure, scalable IoT Hub/DPS deployments: device provisioning at scale, OEM security, cert renewal/ADR, resilient reconnection, auto device config, and IoT Hub hardening.
Decision MakingL64-L76Guidance for choosing IoT Hub vs alternatives, DR usage, routing options, C2D/D2C patterns, pricing and tiers, and methods for monitoring device connections.
Architecture & Design PatternsL77-L83Design patterns for DPS lifecycle/HA/DR, VNet connectivity, secure device streams, and reliably persisting ordered IoT Hub events with Cosmos DB.
Limits & QuotasL84-L90Limits, quotas, and throttling for IoT Hub, Device Provisioning Service, and Device Update, including per‑service caps, scaling behavior, and what happens when limits are exceeded.
SecurityL91-L129Securing IoT Hub, DPS, and Device Update: auth (Entra ID, RBAC, SAS, X.509), cert lifecycle, key rotation, TLS/ciphers, network/IP controls, private endpoints, and policy/compliance.
ConfigurationL130-L165Configuring IoT Hub, DPS, and Device Update: enroll devices, set allocation/IP policies, manage twins, jobs, routing, endpoints, file upload, certificates, and monitor via metrics/logs and VS Code.
Integrations & Coding PatternsL166-L191Patterns and code samples for connecting devices/DPUs to IoT Hub/DPS (MQTT/HTTPS/AMQP), managing identities, twins, methods, jobs, file upload, and message formats/endpoints.
DeploymentL192-L204Deploying and updating IoT devices and hubs: Device Update setup (image/package/delta/proxy), platform support, regional failover, and IoT Hub migration and job scheduling.

Troubleshooting

TopicURL
Diagnose and fix common Azure DPS provisioning errorshttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-troubleshoot-dps
Reference monitoring data for Azure IoT DPShttps://learn.microsoft.com/en-us/azure/iot-dps/monitor-iot-dps-reference
Use Agent Check to diagnose missing Device Update deviceshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-agent-check
Use Device Update diagnostics, error codes, and logshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-diagnostics
Interpret Device Update for IoT Hub error codeshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-error-codes
Collect and review Device Update diagnostic logs remotelyhttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-log-collection
Resolve proxy update import errors in Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-proxy-update-troubleshooting
Diagnose and fix common Device Update issueshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/troubleshoot-device-update
Fix storage permission errors when importing Device Updateshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/troubleshoot-storage
Collect device debug logs using IoT SDKshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-collect-device-logs
Diagnose and fix Azure IoT Hub device connectivityhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-troubleshoot-connectivity
Resolve Azure IoT Hub error codeshttps://learn.microsoft.com/en-us/azure/iot-hub/troubleshoot-error-codes
Troubleshoot Azure IoT Hub message routing issueshttps://learn.microsoft.com/en-us/azure/iot-hub/troubleshoot-message-routing

Best Practices

TopicURL
Apply DPS best practices for large-scale IoT deploymentshttps://learn.microsoft.com/en-us/azure/iot-dps/concepts-deploy-at-scale
Implement OEM security practices for DPS-enabled deviceshttps://learn.microsoft.com/en-us/azure/iot-dps/concepts-device-oem-security-practices
Plan and execute IoT certificate renewal with ADRhttps://learn.microsoft.com/en-us/azure/iot-hub/concept-certificate-renewal
Design resilient Azure IoT Hub device reconnectionhttps://learn.microsoft.com/en-us/azure/iot-hub/concepts-manage-device-reconnections
Apply IoT Hub automatic device configuration best practiceshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-configuration-best-practices
Apply security best practices to Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/secure-azure-iot-hub

Decision Making

TopicURL
Decide when to disable IoT Hub disaster recoveryhttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-disable-dr
Decide between Azure IoT Hub and Event Hubshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-compare-event-hubs
Choose IoT Hub cloud-to-device communication optionhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-c2d-guidance
Choose IoT Hub device-to-cloud communication optionhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-d2c-guidance
Understand Azure IoT Hub pricing and meteringhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-pricing
Decide between IoT Hub routing and Event Gridhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-event-grid-routing-comparison
Select the right Azure IoT Hub tier and scalehttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-scaling
Select and upgrade Azure IoT Hub tier and sizehttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-upgrade
Choose IoT Hub device connection monitoring methodhttps://learn.microsoft.com/en-us/azure/iot-hub/monitor-device-connection-state

Architecture & Design Patterns

TopicURL
Plan DPS device lifecycle and reprovisioning policieshttps://learn.microsoft.com/en-us/azure/iot-dps/concepts-device-reprovision
Design DPS high availability and disaster recoveryhttps://learn.microsoft.com/en-us/azure/iot-dps/iot-dps-ha-dr
Use virtual network connectivity patterns with DPShttps://learn.microsoft.com/en-us/azure/iot-dps/virtual-network-support

Limits & Quotas

TopicURL
Azure IoT DPS FAQs on limits and behaviorhttps://learn.microsoft.com/en-us/azure/iot-dps/dps-faq
Review Azure Device Update service limitshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-limits
Azure IoT Hub quotas, limits, and throttling behaviorhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-quotas-throttling

Security

TopicURL
Secure DPS APIs using Microsoft Entra ID and RBAChttps://learn.microsoft.com/en-us/azure/iot-dps/concepts-control-access-dps-azure-ad
Configure DPS access control with SAS tokenshttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-control-access
Revoke or disenroll device access in DPS securelyhttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-revoke-device-access-portal
Roll and update X.509 certificates in DPShttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-roll-certificates
Deprovision DPS devices and revoke IoT Hub accesshttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-unprovision-devices
Verify X.509 CA certificates with DPS proof-of-possessionhttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-verify-certificates
Configure IP filtering rules for Azure IoT DPShttps://learn.microsoft.com/en-us/azure/iot-dps/iot-dps-ip-filtering
Manage public network access and private endpoints for DPShttps://learn.microsoft.com/en-us/azure/iot-dps/public-network-access
Configure TLS versions and ciphers for DPS connectionshttps://learn.microsoft.com/en-us/azure/iot-dps/tls-support
Assign RBAC roles for Device Update and IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/configure-access-control-device-update
Set up private endpoints for Device Update accountshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/configure-private-endpoints
Configure RBAC and Entra auth for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-control-access
Configure data encryption and CMKs for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-data-encryption
Configure network ports for Device Update traffichttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-networking
Manage root key rotation for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-rootkey
Understand end-to-end security in Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-security
Configure network security and private access for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/network-security
Secure IoT Hub APIs with Microsoft Entra ID and RBAChttps://learn.microsoft.com/en-us/azure/iot-hub/authenticate-authorize-azure-ad
Control IoT Hub access with SAS tokenshttps://learn.microsoft.com/en-us/azure/iot-hub/authenticate-authorize-sas
Authenticate IoT Hub devices with X.509 certificateshttps://learn.microsoft.com/en-us/azure/iot-hub/authenticate-authorize-x509
Manage certificate revocation and policies for IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/concepts-certificate-policy-management
Manage IoT Hub device identities and connection stringshttps://learn.microsoft.com/en-us/azure/iot-hub/create-connect-device
Revoke device certificates and clean up ADR policieshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-revoke-certificate-delete-policy
Use Azure IoT Hub identity registry for device managementhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-identity-registry
Configure IP filtering rules for Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-ip-filtering
Use managed identities with Azure IoT Hub egresshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-managed-identity
Manage public network access for Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-public-network-access
Restrict IoT Hub outbound network access for DLPhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-restrict-outbound-network-access
Configure TLS versions and cipher suites for Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-tls-support
Migrate IoT Hub TLS root certificate to DigiCert G2https://learn.microsoft.com/en-us/azure/iot-hub/migrate-tls-certificate
Built-in Azure Policy definitions for IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/policy-reference
Regenerate IoT Hub shared access keys safelyhttps://learn.microsoft.com/en-us/azure/iot-hub/regenerate-keys
Azure Policy compliance controls for IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/security-controls-policy
Create and upload X.509 test certificates for IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/tutorial-x509-test-certs
Use virtual network and Private Link connectivity with Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/virtual-network-support

Configuration

TopicURL
Manage DPS device enrollments in Azure portalhttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-manage-enrollments
Link and manage IoT hubs in DPShttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-manage-linked-iot-hubs
Configure DPS allocation policies across IoT hubshttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-use-allocation-policies
Query and manage DPS instance IP address propertieshttps://learn.microsoft.com/en-us/azure/iot-dps/iot-dps-understand-ip-address
Create apt manifests for package-based Device Updateshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-apt-manifest
Configure adu-config.json for Device Update agenthttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-configuration-file
Configure multistep execution in Device Update manifestshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-multi-step-updates
Author JSON import manifests for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/import-schema
Configure related files in Device Update import manifestshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/related-files
Define update manifest payloads for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/update-manifest
Configure ADR credential for Microsoft-backed certificateshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-configure-credential
Create or edit Microsoft-root CA policy in ADRhttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-create-policy
Configure ADR policy with external root CAhttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-create-policy-external-certificate
Disable or enable IoT devices in Azure Device Registryhttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-disable-enable-device
Configure IoT Hub file upload to Azure Storagehttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-configure-file-upload
Handle customer data requests for IoT Hub deviceshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-customer-data-requests
Understand and configure Azure IoT Hub device twinshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-device-twins
Configure and use IoT Hub direct methodshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-direct-methods
Use IoT Hub file upload for large device datahttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-file-upload
Configure and manage Azure IoT Hub jobs for device fleetshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-jobs
Configure cloud-to-device messaging in IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-messages-c2d
Configure IoT Hub device-to-cloud message routinghttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-messages-d2c
Understand and configure Azure IoT Hub module twinshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-module-twins
Configure IoT Hub communication protocols and portshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-protocols
Use IoT Hub message routing query languagehttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-routing-query-syntax
Configure message enrichments in Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-message-enrichments-overview
Non-telemetry event schemas for Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-non-telemetry-event-schema
Understand and manage Azure IoT Hub IP addresseshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-understand-ip-address
Manage IoT Hub device and module twins via portal and CLIhttps://learn.microsoft.com/en-us/azure/iot-hub/manage-device-twins
Reference metrics and logs for monitoring Azure IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/monitor-iot-hub-reference
Use the Azure IoT Hub VS Code extensionhttps://learn.microsoft.com/en-us/azure/iot-hub/reference-iot-hub-extension
Set up and use IoT Hub message enrichmentshttps://learn.microsoft.com/en-us/azure/iot-hub/tutorial-message-enrichments

Integrations & Coding Patterns

TopicURL
Send additional payload data between devices and DPShttps://learn.microsoft.com/en-us/azure/iot-dps/how-to-send-additional-data
Use raw HTTPS with DPS symmetric key provisioninghttps://learn.microsoft.com/en-us/azure/iot-dps/iot-dps-https-sym-key-support
Use raw HTTPS with DPS X.509 certificate provisioninghttps://learn.microsoft.com/en-us/azure/iot-dps/iot-dps-https-x509-support
Connect devices to Azure IoT DPS over MQTThttps://learn.microsoft.com/en-us/azure/iot-dps/iot-mqtt-connect-to-iot-dps
Programmatically create DPS TPM individual enrollmentshttps://learn.microsoft.com/en-us/azure/iot-dps/quick-enroll-device-tpm
Programmatically create DPS X.509 enrollment groupshttps://learn.microsoft.com/en-us/azure/iot-dps/quick-enroll-device-x509
Implement Device Update component enumerator via proxyhttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/components-enumerator
Use Device Update agent status API on deviceshttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-agent-status
Send and receive IoT Hub cloud-to-device messages with SDKshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-cloud-to-device-messaging
Implement device management actions using IoT Hub direct methodshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-device-management
Use IoT Hub device and service SDKs with device twinshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-device-twins
Upload device files to cloud using IoT Hub SDKshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-file-upload
Use module identities and twins with IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-module-twins
Use IoT Hub service SDK to schedule broadcast jobshttps://learn.microsoft.com/en-us/azure/iot-hub/how-to-schedule-broadcast-jobs
Use AMQP protocol with Azure IoT Hub endpointshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-amqp-support
Bulk import and export IoT Hub device identitieshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-bulk-identity-mgmt
Construct Azure IoT Hub message formatshttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-messages-construct
Read IoT Hub messages from built-in endpointhttps://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-messages-read-builtin
Connect devices to Azure IoT Hub using MQTThttps://learn.microsoft.com/en-us/azure/iot-hub/iot-mqtt-connect-to-iot-hub
Control IoT devices via direct methods using .NET sampleshttps://learn.microsoft.com/en-us/azure/iot-hub/quickstart-control-device
Use PowerShell script to self-sign IoT Hub CSR certificateshttps://learn.microsoft.com/en-us/azure/iot-hub/reference-self-sign-script
Connect IoT devices to Azure IoT Hub via MQTThttps://learn.microsoft.com/en-us/azure/iot-hub/tutorial-use-mqtt

Deployment

TopicURL
Generate and deploy delta updates with Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/deploy-delta-updates
Provision Device Update agent as IoT Edge modulehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-agent-provisioning
Perform proxy updates with Device Update for IoT Hubhttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-howto-proxy-updates
Deploy image-based Device Update on Raspberry Pihttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-raspberry-pi
Use regional failover mappings for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-region-mapping
Deploy package-based Device Update with Ubuntu agenthttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/device-update-ubuntu-agent
Check supported platforms for Device Updatehttps://learn.microsoft.com/en-us/azure/iot-hub-device-update/support
Manually migrate Azure IoT Hub across regions or SKUshttps://learn.microsoft.com/en-us/azure/iot-hub/migrate-hub-arm
Migrate Azure IoT Hub using Azure CLI state commandshttps://learn.microsoft.com/en-us/azure/iot-hub/migrate-hub-state-cli
Schedule IoT Hub jobs for device groups using Azure CLIhttps://learn.microsoft.com/en-us/azure/iot-hub/schedule-jobs-cli

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.