Restrictions

Please consider following restrictions.

What Description
Thing ID and Policy ID Max. 256 characters
Thing ID and Policy ID Must be unique and follow the pattern namespace:name.
The namespace must conform to the reverse domain name notation. (See Namespace )
The part after the colon (:) as a separator may not start with $, may contain special characters, but not the following 8 characters as well as control characters (hex 00-1F and 7F-FF). These have to be encoded similar to URL-encoding by replacing them with %XX where XX is the hex code of the character.
See Eclipse Ditto encoding helper for details.
/ = “%2F”
? = “%3F”
# = “%23”
* = “%2A”
, = “%2C”
= “%20” (blank)
% = “%25”
= ”%22“
Feature ID May contain special characters, but not the following 8 characters as well as control characters (hex 00-1F and 7F-FF). These have to be encoded similar to URL-encoding by replacing them with %XX where XX is the hex code of the character.
See Eclipse Ditto encoding helper for details.
/ = ”%2F“
? = ”%3F“
# = ”%23“
* = ”%2A“
, = ”%2C“
= ”%20“ (blank)
% = ”%25“
= “%22”
Size of Things
complete content including Features in JSON representation
100 kB
Size of Thing - Feature - Property path
complete path of a namespace - thing ID - feature property including all sub keys
Applies also for the Thing - Attribute path
950 Byte
Size of Messages 250 kB
Size of Policies 100 kB
Number of OAuth scopes in a JWT 20
i.e. if your custom OpenID Connect provider issues a JWT with more then 20 scopes, we will only accept the first 20.
Size of header 5 kB sum of all headers must not exceed this
Number of toplevel entries in a custom header A header x-things-parameter-order is used to provide the correct order of JSON payload.
We support a max of 100 toplevel entries.
Number of authorization subjects 100
JSON Strings The null character \u0000 is forbidden
JSON Integers The range of integer values allowed is from -9223372036854775808 to 9223372036854775807.
This is the limit of a 64 bit signed integer, also known as long integer.
Attributes and Properties Set of characters for the keys should follow the pattern:
[_a-zA-Z][_a-zA-Z0-9\-]*
Websocket:
Max. consumed message rate per session
100/second (please get in contact if more is needed)
If a single websocket session receives more than 100 messages per second, backpressure is applied and consumption throttled.
Connections (e.g. to Bosch IoT Hub):
Max. consumed message rate per connection
100/second (please get in contact if more is needed)
If a single connection receives more than 100 messages per second, backpressure is applied and consumption throttled.
Payload mapping Only supported for the Connections channel
Payload mapping:
Maximum number of configured mappings per connection
10
Payload mapping:
Maximum number of produced messages per mapping
10
Payload mapping:
Maximum size of JavaScript code
50 KB
Payload mapping:
Maximum execution time per message
500 msec. (single CPU core)
Payload mapping:
Maximum stack depth
10 levels
Payload mapping:
JavaScript language support
JavaScript/ECMAScript language features according to Rhino Version 1.7.10 with a subset of ES5, 6, and 7. See http://mozilla.github.io/rhino/compat/engines.html for details.
Number of namespaces max. 10 for Standard plan
max. 1 for Free plan and Starter plan
Number of connections max. 10 for Standard plan
max. 10 for Free plan and Starter plan - this number could be less in future
Search index max. 950 Byte for the path
max. 950 Byte for the value