Ditto Protocol topic structure for Things
A valid topic consists of six elements, describing the thing affected by this message and the type of the message:
<namespace>/<thingName>/things/<channel>/<criterion>/<action>
- namespace: the namespace of the Thing.
- thingName: the name of the Thing.
- group: the appropriate group for addressing Things is- things.
- channel: the channel of the Protocol message; can either be- liveor- twin.
- criterion: the type of Protocol message; can either be- commands,- events,- searchor- messages.
- action: the action executed on the Thing, only required for:- Commands: create/modify,retrieveordelete.
- Events: created,modified,deleted.
 
- Commands: 
Thing representation
API version 1
The representation of a Thing in API version 1 is specified as follows:
API version 2
The representation of a Thing in API version 2 is specified as follows:
Common error responses for Things
These error responses can occur independent of the command that was sent:
| status | error | message | 
|---|---|---|
| 400 | things:id.invalid | The Thing ID <thingId>is not valid! | 
| 429 | things:thing.toomanymodifyingrequests	 | Too many modifying requests are already outstanding to the Thing with ID <thingId>. | 
| 503 | things:thing.unavailable | The Thing with the given ID is not available, please try again later. |