Things HTTP API compared with Java client

Things HTTP API

Criteria Description
Programming language Almost any programming language, e.g. Java, JavaScript, NodeJS, .NET, Python, C/C++
Connection paradigm Connectionless protocol with lower permanent resource allocation on sporadic transactions
Channel security HTTPS - HTTP over Transport Layer Security
Message exchange pattern blocking request - response
Authentication mechanism ✔ User authentication using: JSON Web Token (JWT) issued by Bosch-ID, Google, or your custom OAuth2 provider. See Authenticate as a user
✔ Technical client authentication using a JSON Web Token (JWT) issued by Suite OAuth2 client, or your custom OAuth2 provider. See Authenticate as a technical client
✔ Technical client authentication using cryptographic signature see Authenticate as a technical client (deprecated)
Equivalent available in open source Eclipse Ditto Based on Eclipse Ditto, but additional resource here (e.g. Solution)

Ditto client

Criteria Description
Programming language Java
Connection paradigm Connection-oriented with an always open and persistent connection with only one-time handshake overhead for lowest latency and highest throughput
Channel security WSS - WebSocket over Transport Layer Security
Message exchange pattern non-blocking
request - asynchronous response
Authentication mechanism ✔ User authentication using: HTTP BASIC Authentication
✔ Technical client authentication using a JSON Web Token (JWT) issued by Suite OAuth2 client, or your custom OAuth2 provider. See Authenticate as a technical client. See ditto-client instantiation
Equivalent available in open source Eclipse Ditto Source by Eclipse Ditto

Things client - deprecated

Criteria Description
Programming language Java
Connection paradigm Connection-oriented with an always open and persistent connection with only one-time handshake overhead for lowest latency and highest throughput
Channel security WSS - WebSocket over Transport Layer Security
Message exchange pattern non-blocking
request - asynchronous response
Authentication mechanism ✔ User authentication using: HTTP BASIC Authentication
✔ Technical client authentication using cryptographic challenge-response mechanism
see things-client instantiation (deprecated)
Equivalent available in open source Eclipse Ditto ditto-client is the open source equivalent
Imprint Legal info Privacy statement