Skip to content

Quotas and Limits

Limit Type Description Default Value Adjustable
Rules per group The maximum number of rules that can be created under a group 5 No
Consumer groups per group The maximum number of consumer groups that can be created under a group 2 Yes
Shared subscriptions per group The maximum number of subscriptions in a shared subscription group. 100 No
Maximum message expiry time The maximum message expiry time of MQTT5 message 604800 No
Topic alias maximum The maximum value of MQTT 5 Topic Alias topics allowed for a client can per connection. If the client tries to publish with Topic Alias topics beyond the maximum limit, the client will be disconnected. 8 No
Retain Message Publish-In Per second MQTT/HTTP publish requests with a RETAIN flag set made to the same topic per second. 1 No
Replay jobs per group The maximum number of replay jobs active (InProgress/Paused) per group 5 Yes
Firmwares per group The maximum number of firmwares (used for OTA job update) 50 Yes

 

Limit Type Description Default Value Adjustable
Consumer groups per group The maximum number of consumer groups that can be created under a group 5 Yes

When a group is initially onboarded in Trimble IoT under Azure cloud, by default IoT Hub will be provisioned in S1 tier with 1 unit. Based on integrating application and devices’ projected traffic IoT hub tier and units for the group will be scaled. Contact support for queries related to scaling.

Tier S1 S3
Max Units 200 10
Total Messages per/day 400000 /unit 300000000 /unit
C2D (Outbound) Messages 1.67 /sec/unit 83.33 /sec/unit
D2C (Inbound) Messages Higher of 100 /sec or 12 /sec/unit 6,000 /sec/unit
Identity registry operations (create, update, delete) 1.67 /sec/unit 83.33 /sec/unit
New device connections (this limit applies to the rate of new connections, not the total number of connections) Higher of 100 /sec or 12 /sec/unit 6,000 /sec/unit

The device connection state returned by the GET /devices/{id} API is updated asynchronously and may reflect changes with a delay of up to 2 minutes.

When a device connects and disconnects frequently within a one-minute period, only the latest connection state event and its associated timestamp are returned by the GET /messages API.

IoT Hub allows 3x the limits based on the current tier set for upto 1 minutes as burst. For example,

  1. For S1 1 Unit - 1.67 Outbounds(C2D)/sec is allowed. So, upto 5 Outbounds(C2D)/sec will be allowed as burst for a few seconds upto 1 minute.

  2. For S1 5 Units - 8 Outbounds(C2D)/sec is allowed. So, upto 24 Outbounds(C2D)/sec will be allowed as burst for a few seconds upto 1 minute.

Twin updates to a device if done frequently (say., several times within a minute) will be throttled with a TooManyRequests response.

Use response status code 429 to identify that the request has been throttled. Recommendation is to use the response status code to decide on appropriate action whereas the content in the response body can be used for the purpose of logging only. Please examine if the operation is suitable for retrying. Determine an appropriate retry count and interval with exponential back-off mechanism, wherever applicable. Test your retry strategy and implementation. In the event of undesired throttling behavior, contact support for assistance.