---
id: "iot-hub"
type: "kind"
category: "messaging"
url: "https://localhost:3000/catalogue/kinds/iot-hub"
---

# IoT hub

A device gateway with a registry, per-device identity and twin state.

| | |
|---|---|
| Category | Messaging |
| Properties | 7 |
| Components | 22 |
| Rules | 0 |

## Properties

| property | type | values | required | default |
|---|---|---|---|---|
| `deviceCount` | integer | — | no | — |
| `deviceProvisioning` | boolean | — | no | — |
| `deviceTwin` | boolean | — | no | — |
| `managed` | boolean | — | no | false |
| `messagesPerDayLimit` | integer | — | no | — |
| `perDeviceIdentity` | boolean | — | no | true |
| `protocol` | enum | `mqtt`, `amqp`, `http`, `multi`, `lorawan` | no | — |

## Rules for this kind · 0

No rule selects this kind or its category.

## Components · 22

### vendor-neutral

- [Generic IoT hub](https://localhost:3000/catalogue/components/iot-hub.md) `iot-hub` — the kind itself

### alibabacloud

- [IoT Platform](https://localhost:3000/catalogue/components/alibaba-iot-platform.md) `alibaba-iot-platform` — 2 defaults
- [Alibaba Cloud Link WAN](https://localhost:3000/catalogue/components/alibaba-link-wan.md) `alibaba-link-wan` — 2 defaults

### aws

- [AWS IoT Core](https://localhost:3000/catalogue/components/aws-iot-core.md) `aws-iot-core` — 5 defaults
- [AWS IoT Device Management](https://localhost:3000/catalogue/components/aws-iot-device-management.md) `aws-iot-device-management` — 5 defaults
- [AWS IoT FleetWise](https://localhost:3000/catalogue/components/aws-iot-fleetwise.md) `aws-iot-fleetwise` — 4 defaults
- [Managed integrations for AWS IoT Device Management](https://localhost:3000/catalogue/components/aws-iot-managed-integrations.md) `aws-iot-managed-integrations` — 3 defaults
- [AWS IoT SiteWise](https://localhost:3000/catalogue/components/aws-iot-sitewise.md) `aws-iot-sitewise` — 5 defaults
- [AWS IoT Core for LoRaWAN](https://localhost:3000/catalogue/components/aws-iot-wireless.md) `aws-iot-wireless` — 4 defaults
- [Amazon Monitron](https://localhost:3000/catalogue/components/aws-monitron.md) `aws-monitron` — 3 defaults

### azure

- [Device Update for IoT Hub](https://localhost:3000/catalogue/components/azure-device-update.md) `azure-device-update` — 2 defaults
- [Azure IoT Central](https://localhost:3000/catalogue/components/azure-iot-central.md) `azure-iot-central` — 5 defaults
- [Azure IoT Hub](https://localhost:3000/catalogue/components/azure-iot-hub.md) `azure-iot-hub` — 6 defaults

### default

- [Eclipse Ditto](https://localhost:3000/catalogue/components/ditto.md) `ditto` — 5 defaults
- [EMQX](https://localhost:3000/catalogue/components/emqx.md) `emqx` — 3 defaults
- [HiveMQ](https://localhost:3000/catalogue/components/hivemq.md) `hivemq` — 2 defaults
- [Eclipse Hono](https://localhost:3000/catalogue/components/hono.md) `hono` — 5 defaults
- [OPC UA server](https://localhost:3000/catalogue/components/opc-ua-server.md) `opc-ua-server` — 3 defaults
- [ThingsBoard](https://localhost:3000/catalogue/components/thingsboard.md) `thingsboard` — 5 defaults
- [VerneMQ](https://localhost:3000/catalogue/components/vernemq.md) `vernemq` — 2 defaults

### gcp

- [Manufacturing Connect](https://localhost:3000/catalogue/components/google-manufacturing-connect.md) `google-manufacturing-connect` — 2 defaults

### oci

- [OCI Internet of Things Platform](https://localhost:3000/catalogue/components/oci-iot.md) `oci-iot` — 4 defaults

## Source (`kind` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../schema/kind.schema.json
# Device identity and twin state that stream (partitions and retention) and pubsub-topic do not carry. deviceTwin, deviceProvisioning and messagesPerDayLimit have no default so fleet and quota rules can catch their absence.
schemaVersion: "1"
type: "kind"
id: "iot-hub"
category: "messaging"
properties:
  protocol:
    type: "enum"
    values: ["mqtt", "amqp", "http", "multi", "lorawan"]
  deviceCount:
    type: "integer"
  perDeviceIdentity:
    type: "boolean"
    default: true
  deviceTwin:
    type: "boolean"
  deviceProvisioning:
    type: "boolean"
  messagesPerDayLimit:
    type: "integer"
  managed:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/kinds/iot-hub
