Download OpenAPI specification:Download
Maps Messaging Server Rest API, provides simple Rest API to manage and interact with the server
Provides endpoints for managing user authentication and authorisation, including login, logout, token management, and role-based access control to ensure secure interactions with the server.
Retrieves all currently known groups. Requires authentication if enabled in the configuration.
| filter | string Example: filter=name = 'admin' Optional filter string |
[- {
- "name": "admin",
- "uniqueId": "e808afcb-1ff9-46cd-a322-3119dbf1d071",
- "usersList": [
- {
- "username": "myUserName",
- "uniqueId": "83db8741-57ca-4147-a973-49789d9150bb",
- "groupList": [
- {
- "name": "admin",
- "uniqueId": "e808afcb-1ff9-46cd-a322-3119dbf1d071"
}
], - "attributes": {
- "property1": "string",
- "property2": "string"
}
}
]
}
]Adds a user to a group using the UUID of the user and UUID of the group . Requires authentication if enabled in the configuration.
| groupUuid required | string |
| userUuid required | string |
{- "status": "string"
}Removes a user from a group using the users UUID and the groups UUID . Requires authentication if enabled in the configuration.
| groupUuid required | string |
| userUuid required | string |
{- "status": "string"
}Retrieve the group using the UUID of the specific group. Requires authentication if enabled in the configuration.
| groupUuid required | string |
{- "name": "admin",
- "uniqueId": "e808afcb-1ff9-46cd-a322-3119dbf1d071",
- "usersList": [
- {
- "username": "myUserName",
- "uniqueId": "83db8741-57ca-4147-a973-49789d9150bb",
- "groupList": [
- {
- "name": "admin",
- "uniqueId": "e808afcb-1ff9-46cd-a322-3119dbf1d071"
}
], - "attributes": {
- "property1": "string",
- "property2": "string"
}
}
]
}Retrieves all currently known users that are locked out due to failed log in attempts.
[- {
- "uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
- "username": "string",
- "locked": true,
- "remainingLockSeconds": 0,
- "lockedUntilIso": "string"
}
]Retrieves all currently known users filtered by the optional filter string, SQL like syntax. Requires authentication if enabled in the configuration.
| filter | string Example: filter=username = 'bill' Optional filter string |
[- {
- "username": "myUserName",
- "uniqueId": "83db8741-57ca-4147-a973-49789d9150bb",
- "groupList": [
- {
- "name": "admin",
- "uniqueId": "e808afcb-1ff9-46cd-a322-3119dbf1d071"
}
], - "attributes": {
- "property1": "string",
- "property2": "string"
}
}
]Adds a new user to the system. Requires authentication if enabled in the configuration.
| username required | string (Username) The unique username for the new user account. |
| password required | string (Password) The password or passphrase for the new user, intended to provide secure access. |
{- "status": "string"
}Change the password for a user. Admin may reset any user. A user may change their own password; currentPassword may be required depending on policy.
| userUuid required | string |
| newPassword required | string (New Password) non-empty The new password to set. |
{- "newPassword": "NewStrongerPassword123!"
}Retrieve the user by username. Requires authentication if enabled in the configuration.
| userUuid required | string |
{- "username": "myUserName",
- "uniqueId": "83db8741-57ca-4147-a973-49789d9150bb",
- "groupList": [
- {
- "name": "admin",
- "uniqueId": "e808afcb-1ff9-46cd-a322-3119dbf1d071"
}
], - "attributes": {
- "property1": "string",
- "property2": "string"
}
}Facilitates the management of destinations such as topics and queues. Includes operations for creating, updating, deleting, and querying destinations, as well as managing subscriptions.
Fetch a paginated list of all known destinations. You can filter the list using a selector string, limit the number of returned entries using the 'size' parameter, and sort the results by attributes such as Name, Published Messages, or Stored Messages. Cached results are returned if available to enhance performance. Authentication is required if the server configuration mandates it.
| prefix | string or null Example: prefix=/a/b Namespace prefix to browse. Leading '/' is significant. Server normalizes duplicate and trailing slashes. Empty means root. |
| pageSize | integer <int32> [ 10 .. 1000 ] Default: 100 Example: pageSize=50 Maximum number of entries returned in this page. |
| pageNumber | integer <int32> >= 0 Default: 0 Example: pageNumber=0 Zero-based page number. |
| If-None-Match | string |
{- "totalEntries": 237,
- "totalPages": 5,
- "pageNo": 0,
- "entries": [
- {
- "name": "fred",
- "fullPath": "/a/b/fred",
- "destinationType": "TOPIC",
- "childCount": 1
}
]
}Fetch a paginated list of all known destinations. You can filter the list using a selector string, limit the number of returned entries using the 'size' parameter, and sort the results by attributes such as Name, Published Messages, or Stored Messages. Cached results are returned if available to enhance performance. Authentication is required if the server configuration mandates it.
| filter | string Example: filter=type = 'topic' AND storedMessages > 50 An optional filter string for selecting specific destinations. The filter should be a valid expression that complies with the selector syntax. |
| size | integer <int32> Default: 40 Example: size=100 The maximum number of destinations to return in the response. A default value is used if this parameter is not provided. |
| sortBy | string Default: "Published" Enum: "Name" "Published" "Delivered" "Stored" "Pending" "Delayed" "Expired" Example: sortBy=Published The attribute by which the list of destinations should be sorted before returning. Possible values include Name, Published, Delivered, Stored, Pending, Delayed, and Expired. |
[- {
- "name": "myDestination",
- "type": "queue",
- "storedMessages": 123,
- "delayedMessages": 123,
- "pendingMessages": 123,
- "schemaId": "schema-123",
- "noInterestMessages": 5,
- "publishedMessages": 1000,
- "retrievedMessages": 980,
- "expiredMessages": 10,
- "deliveredMessages": 970,
- "readTimeAveNs": 1500,
- "writeTimeAveNs": 2000,
- "deleteTimeAveNs": 1200
}
]Fetch detailed information for a specific destination identified by its name. Authentication is required if the server configuration mandates it. Cached results are returned if available to enhance performance.
| destinationName required | string Example: destinationName=destination-01 The name of the destination for which details are requested |
{- "destination": {
- "name": "myDestination",
- "type": "queue",
- "storedMessages": 123,
- "delayedMessages": 123,
- "pendingMessages": 123,
- "schemaId": "schema-123",
- "noInterestMessages": 5,
- "publishedMessages": 1000,
- "retrievedMessages": 980,
- "expiredMessages": 10,
- "deliveredMessages": 970,
- "readTimeAveNs": 1500,
- "writeTimeAveNs": 2000,
- "deleteTimeAveNs": 1200
}, - "subscriptionList": [
- {
- "destinationName": "string",
- "sessionId": "string",
- "hibernating": true,
- "size": 0,
- "pending": 0,
- "sync": true,
- "hasMessagesInFlight": true,
- "hasAtRestMessages": true,
- "messagesIgnored": 0,
- "messagesRegistered": 0,
- "messagesSent": 0,
- "messagesAcked": 0,
- "messagesRolledBack": 0,
- "messagesExpired": 0,
- "paused": true
}
]
}Offers APIs for sending and receiving messages, enabling communication between clients and the server. Supports various messaging protocols and real-time event handling.
Abort the message specifed by the id and the destination name
| destinationName | string |
| eventIds | Array of integers <int64> [ items <int64 > ] |
{- "destinationName": "string",
- "eventIds": [
- 0
]
}{- "status": "string"
}Commit the message specifed by the id and the destination name
| destinationName | string |
| eventIds | Array of integers <int64> [ items <int64 > ] |
{- "destinationName": "string",
- "eventIds": [
- 0
]
}{- "status": "string"
}Retrieves messages for a specified subscription
| destination | string (Destination name) Optional, if supplied gets any messages outstanding for this destination, else all messages pending delivery |
| depth | integer <int32> (Depth) Default: 10 The max number of events that should be returned |
{- "destination": "topicName",
- "depth": 60
}{- "consumedMessages": [
- {
- "destination": "string",
- "messages": {
- "property1": [
- {
- "identifier": 0,
- "payload": "VGhpcyBpcyBhIGV4YW1wbGUgZGF0YS4=",
- "contentType": "application/json",
- "correlationData": "WzEsMiwzLDRd",
- "expiry": 60000,
- "priority": 4,
- "qualityOfService": 1,
- "creation": "2019-08-24T14:15:22Z",
- "dataMap": {
- "key1": "value1",
- "key2": 42
}, - "metaData": {
- "key1": "value1",
- "key2": 42
}
}
], - "property2": [
- {
- "identifier": 0,
- "payload": "VGhpcyBpcyBhIGV4YW1wbGUgZGF0YS4=",
- "contentType": "application/json",
- "correlationData": "WzEsMiwzLDRd",
- "expiry": 60000,
- "priority": 4,
- "qualityOfService": 1,
- "creation": "2019-08-24T14:15:22Z",
- "dataMap": {
- "key1": "value1",
- "key2": 42
}, - "metaData": {
- "key1": "value1",
- "key2": 42
}
}
]
}
}
]
}Get the depth of the queue for a specified subscription
| destination | string (Destination name) Optional, if supplied gets any messages outstanding for this destination, else all messages pending delivery |
| depth | integer <int32> (Depth) Default: 10 The max number of events that should be returned |
{- "destination": "topicName",
- "depth": 60
}{- "subscriptionDepths": [
- {
- "depth": 0,
- "destination": "string"
}
]
}Publishes a message to a specified topic
| destinationName required | string (Destination Topic) The topic to which the message will be published. This should be a valid topic name recognized by the messaging system. |
required | object (Message) Represents a messaging entity with configurable quality, priority, and metadata attributes. |
| retain | boolean (Retain Message) Default: false Indicates if the message should be retained on the destination. If true, the message will be stored and sent to new subscribers on the topic. |
{- "destinationName": "sensor/data",
- "message": {
- "identifier": 0,
- "payload": "VGhpcyBpcyBhIGV4YW1wbGUgZGF0YS4=",
- "contentType": "application/json",
- "correlationData": "WzEsMiwzLDRd",
- "expiry": 60000,
- "priority": 4,
- "qualityOfService": 1,
- "creation": "2019-08-24T14:15:22Z",
- "dataMap": {
- "key1": "value1",
- "key2": 42
}, - "metaData": {
- "key1": "value1",
- "key2": 42
}
}, - "retain": false
}{- "status": "string"
}Delivers messages via Server Side Events, supports MQTT wild card plus JMS style filtering
| token required | string |
| destinationName required | string (Destination Name) Example: destinationName=sensor/data or /sensor/# The name of the destination (e.g., topic or queue) to which the subscription is bound.Supports MQTT style wild card subscription |
| namedSubscription | string or null (Named Subscription) Example: namedSubscription=temperatureAlerts An optional name for a named subscription, allowing clients to re-use existing subscriptions if provided. |
| filter | string or null (Filter Expression) Example: filter=temperature > 25 An optional filter expression written in JMS selector syntax to filter messages received by the subscription. |
| maxDepth | integer or null <int32> (Maximum Queue Depth) Default: 1 Example: maxDepth=10 The maximum number of messages that can be queued for the subscription before new messages are dropped. |
| retainMessage | boolean or null (Retain Message) Default: false Example: retainMessage=false Indicates if messages should be retained on the destination for this subscription, meaning they will be stored and made available to future subscribers. |
{- "identifier": 0,
- "payload": "VGhpcyBpcyBhIGV4YW1wbGUgZGF0YS4=",
- "contentType": "application/json",
- "correlationData": "WzEsMiwzLDRd",
- "expiry": 60000,
- "priority": 4,
- "qualityOfService": 1,
- "creation": "2019-08-24T14:15:22Z",
- "dataMap": {
- "key1": "value1",
- "key2": 42
}, - "metaData": {
- "key1": "value1",
- "key2": 42
}, - "destinationName": "/folder/topic"
}Subscribes to a specified topic
| destinationName required | string (Destination Name) The name of the destination (e.g., topic or queue) to which the subscription is bound.Supports MQTT style wild card subscription |
| namedSubscription | string or null (Named Subscription) An optional name for a named subscription, allowing clients to re-use existing subscriptions if provided. |
| filter | string or null (Filter Expression) An optional filter expression written in JMS selector syntax to filter messages received by the subscription. |
| maxDepth | integer or null <int32> (Maximum Queue Depth) Default: 1 The maximum number of messages that can be queued for the subscription before new messages are dropped. |
| transactional | boolean (Transactional subscription) Default: false Flag to indicate the subscription is transactional |
| retainMessage | boolean or null (Retain Message) Default: false Indicates if messages should be retained on the destination for this subscription, meaning they will be stored and made available to future subscribers. |
{- "destinationName": "sensor/data or /sensor/# ",
- "namedSubscription": "temperatureAlerts",
- "filter": "temperature > 25",
- "maxDepth": 10,
- "transactional": true,
- "retainMessage": false
}{- "status": "string"
}Unsubscribes from a specified topic
| destinationName required | string (Destination Name) The name of the destination (e.g., topic or queue) to which the subscription is bound.Supports MQTT style wild card subscription |
| namedSubscription | string or null (Named Subscription) An optional name for a named subscription, allowing clients to re-use existing subscriptions if provided. |
| filter | string or null (Filter Expression) An optional filter expression written in JMS selector syntax to filter messages received by the subscription. |
| maxDepth | integer or null <int32> (Maximum Queue Depth) Default: 1 The maximum number of messages that can be queued for the subscription before new messages are dropped. |
| transactional | boolean (Transactional subscription) Default: false Flag to indicate the subscription is transactional |
| retainMessage | boolean or null (Retain Message) Default: false Indicates if messages should be retained on the destination for this subscription, meaning they will be stored and made available to future subscribers. |
{- "destinationName": "sensor/data or /sensor/# ",
- "namedSubscription": "temperatureAlerts",
- "filter": "temperature > 25",
- "maxDepth": 10,
- "transactional": true,
- "retainMessage": false
}{- "status": "string"
}Includes endpoints for monitoring the server's health and operational status, providing simple and detailed responses for status checks and diagnostics.
Manages the server's network interfaces, including configuration, monitoring, and troubleshooting of connections to ensure optimal performance and reliability.
Get the end point configuration specifed by the name. Requires authentication if enabled in the configuration.
| endpoint required | string |
{- "schemaLoadingVersion": 1,
- "uniqueId": "string",
- "name": "myInterface",
- "port": 8080,
- "state": "Started",
- "config": {
- "schemaLoadingVersion": 1,
- "name": "MainServer",
- "url": "tcp://localhost:1883",
- "endPointConfig": {
- "schemaLoadingVersion": 1,
- "type": "tcp",
- "discoverable": false,
- "selectorThreadCount": 2,
- "serverReadBufferSize": 10240,
- "serverWriteBufferSize": 10240,
- "proxyProtocolMode": "REQUIRED",
- "allowedProxyHosts": "example.com, localhost, 192.168.1.10, [2001:db8::1]",
- "connectionTimeout": 5000
}, - "saslConfig": {
- "schemaLoadingVersion": 1,
- "realmName": "example-realm",
- "mechanism": "PLAIN",
- "identityProvider": "authProvider123",
- "saslEntries": {
- "entry1": "value1"
}
}, - "protocolConfigs": [
- {
- "schemaLoadingVersion": 1,
- "type": "mqtt",
- "proxyProtocol": false,
- "remoteAuthConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "pass123",
- "clientId": "client123",
- "tokenGenerator": "JWT"
}, - "messageDefaults": {
- "schemaLoadingVersion": 1,
- "expiry": 60000,
- "priority": "NORMAL",
- "qualityOfService": "AT_LEAST_ONCE",
- "responseTopic": "/default/response",
- "contentType": "application/json",
- "schemaId": "default-schema-id",
- "retain": true,
- "meta": true,
- "dataMap": { }
}
}
], - "authenticationRealm": "defaultRealm",
- "backlog": 100,
- "selectorTaskWait": 10
}
}Update the configuration supplied for the named endpoint.
| endpoint required | string |
| schemaLoadingVersion | integer or null <int32> [ 0 .. 10 ] Default: 1 Configuration schema version. 0 = legacy format, 1 = current format. |
| name required | string Name of the endpoint server |
| url required | string [ 1 .. 2048 ] characters ^(tcp|ssl|udp|dtls|ws|wss|serial)://[^\s]+$ URL for the endpoint server |
required | object (EndPointConfigDTO) Abstract base class for all schema configurations |
object or null (SASL Configuration DTO) Represents the configuration for SASL authentication used for REST communication. | |
required | Array of objects (ProtocolConfigDTO) non-empty [ items non-empty ] List of protocol configurations for the endpoint |
| authenticationRealm required | string Authentication realm |
| backlog | integer or null <int32> [ 1 .. 10000 ] Default: 100 Backlog for the endpoint server |
| selectorTaskWait | integer or null <int32> [ 1 .. 1000 ] Default: 10 Selector task wait time |
{- "status": "string"
}Applies the requested state to all configured interface endpoints.
| endpoint required | string |
Requested action to apply to all inter-server connections
| state | string |
{- "state": "string"
}{- "status": "string"
}Get current connections on this endpoint. Requires authentication if enabled in the configuration.
| endpoint required | string |
[- {
- "id": 0,
- "adapter": "string",
- "name": "string",
- "user": "string",
- "protocolName": "string",
- "protocolVersion": "string",
- "proxyAddress": "string",
- "connectedTimeMs": 0,
- "lastRead": 0,
- "lastWrite": 0,
- "totalBytesRead": 0,
- "totalBytesWritten": 0,
- "totalOverflow": 0,
- "totalUnderflow": 0,
- "bytesRead": 0,
- "bytesWritten": 0,
- "overFlow": 0,
- "underFlow": 0
}
]Get the current status and metrics for the specified end point.
| endpoint required | string |
{- "interfaceName": "myInterface",
- "totalBytesSent": 1024000,
- "totalBytesReceived": 2048000,
- "totalMessagesSent": 500,
- "totalMessagesReceived": 480,
- "bytesSent": 1000,
- "bytesReceived": 2000,
- "messagesSent": 5,
- "messagesReceived": 4,
- "connections": 10,
- "errors": 3,
- "statistics": {
- "property1": "{\"latency\": {\"name\": \"latency\", \"unitName\": \"ms\", \"current\": 10, ...}}",
- "property2": "{\"latency\": {\"name\": \"latency\", \"unitName\": \"ms\", \"current\": 10, ...}}"
}
}Get all end point statuses and metrics, fitlered with the optional filter.
| filter | string Example: filter=state = 'started' Optional filter string |
[- {
- "interfaceName": "myInterface",
- "totalBytesSent": 1024000,
- "totalBytesReceived": 2048000,
- "totalMessagesSent": 500,
- "totalMessagesReceived": 480,
- "bytesSent": 1000,
- "bytesReceived": 2000,
- "messagesSent": 5,
- "messagesReceived": 4,
- "connections": 10,
- "errors": 3,
- "statistics": {
- "property1": "{\"latency\": {\"name\": \"latency\", \"unitName\": \"ms\", \"current\": 10, ...}}",
- "property2": "{\"latency\": {\"name\": \"latency\", \"unitName\": \"ms\", \"current\": 10, ...}}"
}
}
]get all end point configuration details, filtered with the optional filter.
| filter | string Example: filter=state = 'started' Optional filter string |
[- {
- "schemaLoadingVersion": 1,
- "uniqueId": "string",
- "name": "myInterface",
- "port": 8080,
- "state": "Started",
- "config": {
- "schemaLoadingVersion": 1,
- "name": "MainServer",
- "url": "tcp://localhost:1883",
- "endPointConfig": {
- "schemaLoadingVersion": 1,
- "type": "tcp",
- "discoverable": false,
- "selectorThreadCount": 2,
- "serverReadBufferSize": 10240,
- "serverWriteBufferSize": 10240,
- "proxyProtocolMode": "REQUIRED",
- "allowedProxyHosts": "example.com, localhost, 192.168.1.10, [2001:db8::1]",
- "connectionTimeout": 5000
}, - "saslConfig": {
- "schemaLoadingVersion": 1,
- "realmName": "example-realm",
- "mechanism": "PLAIN",
- "identityProvider": "authProvider123",
- "saslEntries": {
- "entry1": "value1"
}
}, - "protocolConfigs": [
- {
- "schemaLoadingVersion": 1,
- "type": "mqtt",
- "proxyProtocol": false,
- "remoteAuthConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "pass123",
- "clientId": "client123",
- "tokenGenerator": "JWT"
}, - "messageDefaults": {
- "schemaLoadingVersion": 1,
- "expiry": 60000,
- "priority": "NORMAL",
- "qualityOfService": "AT_LEAST_ONCE",
- "responseTopic": "/default/response",
- "contentType": "application/json",
- "schemaId": "default-schema-id",
- "retain": true,
- "meta": true,
- "dataMap": { }
}
}
], - "authenticationRealm": "defaultRealm",
- "backlog": 100,
- "selectorTaskWait": 10
}
}
]Manages actions on all endpoints.
Requested action to apply to all inter-server connections
| state | string |
{- "state": "string"
}{- "status": "string"
}Provides functionality to configure, manage, and query schemas used by the server, enabling seamless integration with structured data formats and validation mechanisms.
Retrieves all schema configurations, optionally filtered by a query string.
| filter | string |
[- {
- "versionId": "string",
- "epoch": 0,
- "name": "string",
- "description": "string",
- "documentation": "string",
- "labels": {
- "property1": "string",
- "property2": "string"
}, - "ancestor": "string",
- "format": "string",
- "schemaUrl": "string",
- "schema": {
- "empty": true,
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "jsonNull": true,
- "asFloat": 0.1,
- "asByte": "string",
- "jsonPrimitive": true,
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asJsonArray": {
- "empty": true,
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "boolean": true,
- "number": true,
- "string": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "jsonNull": true,
- "asFloat": 0.1,
- "asByte": "string",
- "jsonPrimitive": true,
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asJsonArray": { },
- "asString": "string",
- "jsonArray": true,
- "asCharacter": "string",
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}
}, - "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "jsonNull": true,
- "asFloat": 0.1,
- "asByte": "string",
- "jsonPrimitive": true,
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asJsonArray": { },
- "asString": "string",
- "jsonArray": true,
- "asCharacter": "string",
- "asJsonPrimitive": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "boolean": true,
- "number": true,
- "string": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}, - "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}
}, - "asString": "string",
- "jsonArray": true,
- "asCharacter": "string",
- "asJsonPrimitive": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "boolean": true,
- "number": true,
- "string": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": {
- "empty": true,
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "jsonNull": true,
- "asFloat": 0.1,
- "asByte": "string",
- "jsonPrimitive": true,
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asJsonArray": { },
- "asString": "string",
- "jsonArray": true,
- "asCharacter": "string",
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}
}, - "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "jsonNull": true,
- "asFloat": 0.1,
- "asByte": "string",
- "jsonPrimitive": true,
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asJsonArray": {
- "empty": true,
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}, - "asString": "string",
- "jsonArray": true,
- "asCharacter": "string",
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}
}, - "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "jsonNull": true,
- "asFloat": 0.1,
- "asByte": "string",
- "jsonPrimitive": true,
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asJsonArray": {
- "empty": true,
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "boolean": true,
- "number": true,
- "string": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}, - "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}, - "asString": "string",
- "jsonArray": true,
- "asCharacter": "string",
- "asJsonPrimitive": {
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "boolean": true,
- "number": true,
- "string": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": {
- "empty": true,
- "asInt": 0,
- "asDouble": 0.1,
- "asLong": 0,
- "asBoolean": true,
- "asShort": 0,
- "asFloat": 0.1,
- "asByte": "string",
- "asBigDecimal": 0,
- "asNumber": 0,
- "asBigInteger": 0,
- "asString": "string",
- "asCharacter": "string",
- "jsonNull": true,
- "jsonPrimitive": true,
- "asJsonArray": { },
- "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}, - "jsonArray": true,
- "asJsonPrimitive": { },
- "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}, - "jsonObject": true,
- "asJsonObject": { },
- "asJsonNull": { }
}
}, - "schemaBase64": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "modifiedAt": "2019-08-24T14:15:22Z",
- "notBefore": "2019-08-24T14:15:22Z",
- "expiresAfter": "2019-08-24T14:15:22Z",
- "version": "string",
- "source": "string",
- "resourceType": "string",
- "mimeType": "string",
- "title": "string",
- "interfaceDescription": "string",
- "uniqueId": "string",
- "matchExpression": "string",
- "comments": "string"
}
]Adds a new schema configuration to the system.
| schema | string (Schema) A JSON-encoded string representing the schema object to be posted. |
| context | string (Context) The name or context of the schema, identifying the scope or purpose for which it is used. |
{- "schema": "{\"type\":\"record\",\"name\":\"User\",\"fields\":[{\"name\":\"id\",\"type\":\"string\"}]}",
- "context": "UserProfile"
}"string"Includes operations for monitoring and managing the server's status, configurations, and performance metrics to ensure smooth and efficient operation.
Retrieves detailed information about the server build, such as version and configuration details. Uses caching for improved performance.
{- "serverName": "maps-server",
- "version": "3.3.7",
- "buildDate": "2024-10-13",
- "totalMemory": 536870912,
- "maxMemory": 1073741824,
- "freeMemory": 268435456,
- "numberOfThreads": 120,
- "timeToCreateNano": 1000000,
- "uptime": 123456789,
- "connections": 150,
- "destinations": 30,
- "cpuTime": 1234567890,
- "cpuPercent": 12.5,
- "storageSize": 104857600,
- "threadState": {
- "RUNNABLE": 50,
- "WAITING": 10
}
}Retrieves server usage statistics, including metrics such as CPU usage, memory usage, and active connections. Uses caching for improved performance.
{- "packetsSent": 1024,
- "packetsReceived": 2048,
- "totalReadBytes": 5242880,
- "totalWriteBytes": 4194304,
- "totalConnections": 150,
- "totalDisconnections": 145,
- "totalNoInterestMessages": 10,
- "totalSubscribedMessages": 5000,
- "totalPublishedMessages": 6000,
- "totalRetrievedMessages": 2500,
- "totalExpiredMessages": 20,
- "totalDeliveredMessages": 4000,
- "publishedPerSecond": 50,
- "subscribedPerSecond": 45,
- "noInterestPerSecond": 5,
- "deliveredPerSecond": 60,
- "retrievedPerSecond": 30,
- "stats": "{\"latency\": {\"name\": \"latency\", \"unitName\": \"ms\", \"current\": 10, ...}}"
}Retrieves the current status of all server subsystems, including their operational state (e.g., OK, Warning, or Error). Uses caching for improved performance.
[- {
- "name": "Messaging Service",
- "comment": "System is operating normally.",
- "status": "OK"
}
]Restarts or shuts down the server gracefully, preserving any necessary state before the restart operation begins.
Requested action to apply to all inter-server connections
| state | string |
{- "state": "string"
}"string"Manages the server's integrations with other messaging brokers, enabling interoperability and seamless data exchange across distributed systems.
Retrieves the configuration on the inter-server integration connection. Requires authentication if enabled in the configuration.
| name required | string |
{- "config": {
- "schemaLoadingVersion": 1,
- "name": "MainServer",
- "url": "tcp://localhost:1883",
- "endPointConfig": {
- "schemaLoadingVersion": 1,
- "type": "tcp",
- "discoverable": false,
- "selectorThreadCount": 2,
- "serverReadBufferSize": 10240,
- "serverWriteBufferSize": 10240,
- "proxyProtocolMode": "REQUIRED",
- "allowedProxyHosts": "example.com, localhost, 192.168.1.10, [2001:db8::1]",
- "connectionTimeout": 5000
}, - "saslConfig": {
- "schemaLoadingVersion": 1,
- "realmName": "example-realm",
- "mechanism": "PLAIN",
- "identityProvider": "authProvider123",
- "saslEntries": {
- "entry1": "value1"
}
}, - "protocolConfigs": [
- {
- "schemaLoadingVersion": 1,
- "type": "mqtt",
- "proxyProtocol": false,
- "remoteAuthConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "pass123",
- "clientId": "client123",
- "tokenGenerator": "JWT"
}, - "messageDefaults": {
- "schemaLoadingVersion": 1,
- "expiry": 60000,
- "priority": "NORMAL",
- "qualityOfService": "AT_LEAST_ONCE",
- "responseTopic": "/default/response",
- "contentType": "application/json",
- "schemaId": "default-schema-id",
- "retain": true,
- "meta": true,
- "dataMap": { }
}
}
], - "authenticationRealm": "defaultRealm",
- "backlog": 100,
- "selectorTaskWait": 10,
- "authConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "password",
- "sessionId": "session-xyz",
- "tokenGenerator": "JWT",
- "tokenConfig": {
- "expiry": 3600
}
}, - "linkTransformation": "Schema-To-Json",
- "linkConfigs": [
- {
- "direction": "pull",
- "remote_namespace": "/+/1/1/GPS_RAW_INT",
- "local_namespace": "/"
}
], - "pluginConnection": false,
- "cost": 10,
- "groupName": "Main data uplink"
}, - "state": "string"
}Handles state for the inter-server connection
| name required | string |
Requested action to apply to inter-server connection
| state | string |
{- "state": "string"
}{- "status": "string"
}Retrieves the current status on the inter-server integration connection. Requires authentication if enabled in the configuration.
| name required | string |
{- "id": 0,
- "adapter": "string",
- "name": "string",
- "user": "string",
- "protocolName": "string",
- "protocolVersion": "string",
- "proxyAddress": "string",
- "connectedTimeMs": 0,
- "lastRead": 0,
- "lastWrite": 0,
- "totalBytesRead": 0,
- "totalBytesWritten": 0,
- "totalOverflow": 0,
- "totalUnderflow": 0,
- "bytesRead": 0,
- "bytesWritten": 0,
- "overFlow": 0,
- "underFlow": 0
}Retrieve the current status for the inter-server specified by name. Requires authentication if enabled in the configuration.
| name required | string |
{- "interfaceName": "myInterface",
- "bytesSent": 123456,
- "bytesReceived": 654321,
- "messagesSent": 100,
- "messagesReceived": 95,
- "errors": 2,
- "lastReadTime": 1625812345678,
- "lastWriteTime": 1625812345678,
- "state": "active",
- "statistics": "{\"averageRead\": {\"name\": \"averageRead\", \"unitName\": \"bytes\", \"current\": 50, ...}}"
}Retrieve all current statuses for the inter-server. Requires authentication if enabled in the configuration.
| filter | string Example: filter=state = PAUSED Optional filter string |
{- "list": [
- {
- "interfaceName": "myInterface",
- "bytesSent": 123456,
- "bytesReceived": 654321,
- "messagesSent": 100,
- "messagesReceived": 95,
- "errors": 2,
- "lastReadTime": 1625812345678,
- "lastWriteTime": 1625812345678,
- "state": "active",
- "statistics": "{\"averageRead\": {\"name\": \"averageRead\", \"unitName\": \"bytes\", \"current\": 50, ...}}"
}
]
}Retrieves a list of all inter-server configurations. Requires authentication if enabled in the configuration.
| filter | string Example: filter=state = PAUSED Optional filter string |
{- "data": [
- {
- "config": {
- "schemaLoadingVersion": 1,
- "name": "MainServer",
- "url": "tcp://localhost:1883",
- "endPointConfig": {
- "schemaLoadingVersion": 1,
- "type": "tcp",
- "discoverable": false,
- "selectorThreadCount": 2,
- "serverReadBufferSize": 10240,
- "serverWriteBufferSize": 10240,
- "proxyProtocolMode": "REQUIRED",
- "allowedProxyHosts": "example.com, localhost, 192.168.1.10, [2001:db8::1]",
- "connectionTimeout": 5000
}, - "saslConfig": {
- "schemaLoadingVersion": 1,
- "realmName": "example-realm",
- "mechanism": "PLAIN",
- "identityProvider": "authProvider123",
- "saslEntries": {
- "entry1": "value1"
}
}, - "protocolConfigs": [
- {
- "schemaLoadingVersion": 1,
- "type": "mqtt",
- "proxyProtocol": false,
- "remoteAuthConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "pass123",
- "clientId": "client123",
- "tokenGenerator": "JWT"
}, - "messageDefaults": {
- "schemaLoadingVersion": 1,
- "expiry": 60000,
- "priority": "NORMAL",
- "qualityOfService": "AT_LEAST_ONCE",
- "responseTopic": "/default/response",
- "contentType": "application/json",
- "schemaId": "default-schema-id",
- "retain": true,
- "meta": true,
- "dataMap": { }
}
}
], - "authenticationRealm": "defaultRealm",
- "backlog": 100,
- "selectorTaskWait": 10,
- "authConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "password",
- "sessionId": "session-xyz",
- "tokenGenerator": "JWT",
- "tokenConfig": {
- "expiry": 3600
}
}, - "linkTransformation": "Schema-To-Json",
- "linkConfigs": [
- {
- "direction": "pull",
- "remote_namespace": "/+/1/1/GPS_RAW_INT",
- "local_namespace": "/"
}
], - "pluginConnection": false,
- "cost": 10,
- "groupName": "Main data uplink"
}, - "state": "string"
}
], - "globalConfig": {
- "property1": { },
- "property2": { }
}
}Handles state for all inter-server connections
Requested action to apply to all inter-server connections
| state | string |
{- "state": "string"
}{- "status": "string"
}Handles client connections to the server, offering endpoints for monitoring, managing, and troubleshooting active connections and session details.
Retrieve the details of the specified connection id. Requires authentication if enabled in the configuration.
| connectionId required | string |
{- "endPointSummary": {
- "id": 0,
- "adapter": "string",
- "name": "string",
- "user": "string",
- "protocolName": "string",
- "protocolVersion": "string",
- "proxyAddress": "string",
- "connectedTimeMs": 0,
- "lastRead": 0,
- "lastWrite": 0,
- "totalBytesRead": 0,
- "totalBytesWritten": 0,
- "totalOverflow": 0,
- "totalUnderflow": 0,
- "bytesRead": 0,
- "bytesWritten": 0,
- "overFlow": 0,
- "underFlow": 0
}, - "protocolInformation": {
- "type": "amqp",
- "sessionId": "session-12345",
- "timeout": 30000,
- "keepAlive": 15000,
- "messageTransformationName": "default-transformation",
- "selectorMapping": {
- "temperature": "> 20",
- "status": "active"
}, - "destinationTransformationMapping": {
- "alerts": "alert-transform",
- "telemetry": "telemetry-transform"
}
}
}Retrieve a list of all current connections to the server, can be filtered with the optional filter string. Requires authentication if enabled in the configuration.
| filter | string Example: filter=totalOverflow > 10 OR totalUnderflow > 5 Optional filter string |
[- {
- "id": 0,
- "adapter": "string",
- "name": "string",
- "user": "string",
- "protocolName": "string",
- "protocolVersion": "string",
- "proxyAddress": "string",
- "connectedTimeMs": 0,
- "lastRead": 0,
- "lastWrite": 0,
- "totalBytesRead": 0,
- "totalBytesWritten": 0,
- "totalOverflow": 0,
- "totalUnderflow": 0,
- "bytesRead": 0,
- "bytesWritten": 0,
- "overFlow": 0,
- "underFlow": 0
}
]Provides mechanisms for managing the server's discovery agents, allowing automated detection and configuration of network services and resources.
Retrieve a list of all currently discovered servers, can be filtered with the optional filter. Requires authentication if enabled in the configuration.
| filter | string Example: filter=schemaSupport = TRUE OR systemTopicPrefix IS NOT NULL Optional filter string |
[- {
- "serverName": "myServer",
- "systemTopicPrefix": "$SYS",
- "schemaSupport": true,
- "schemaPrefix": "$SCHEMA",
- "version": "1.2.3",
- "buildDate": "2024-01-15",
- "services": {
- "mqtt": { },
- "amqp": { }
}
}
]Manages the state of the discovery manager
Requested action to apply to all inter-server connections
| state | string |
{- "state": "string"
}{- "status": "string"
}Enables the management of hardware devices integrated with the server, including configuration, monitoring, and diagnostics for seamless hardware-software interaction.
Retreive a list of all detected devices currently online. Requires authentication if enabled in the configuration.
[- {
- "name": "temperatureSensor01",
- "description": "Temperature sensor for monitoring room temperature",
- "type": "sensor",
- "state": "25.0C"
}
]Offers APIs for managing LoRa devices, including adding, updating, retrieving configurations, monitoring device statistics, and managing endpoint connections.
Fetches a list of all LoRa devices along with their configurations and statistics.
[- {
- "name": "LoRaDevice_01",
- "radio": "SX1276",
- "bytesSent": 1048576,
- "bytesReceived": 2048000,
- "packetsSent": 500,
- "packetsReceived": 480,
- "endPointInfoList": [
- {
- "nodeId": 1,
- "lastRSSI": -70,
- "incomingQueueSize": 10,
- "connectionSize": 5,
- "lastRead": 0,
- "lastWrite": 0
}
]
}
]Fetches the details of a specific LoRa device identified by its name.
| deviceName required | string |
{- "name": "LoRaDevice_01",
- "radio": "SX1276",
- "bytesSent": 1048576,
- "bytesReceived": 2048000,
- "packetsSent": 500,
- "packetsReceived": 480,
- "endPointInfoList": [
- {
- "nodeId": 1,
- "lastRSSI": -70,
- "incomingQueueSize": 10,
- "connectionSize": 5,
- "lastRead": 0,
- "lastWrite": 0
}
]
}Fetches the connection information for a specific endpoint of a LoRa device, identified by the device name and node ID.
| deviceName required | string |
| nodeId required | string |
[- {
- "rssi": -70,
- "missedPackets": 3,
- "receivedPackets": 500,
- "remoteNodeId": 2,
- "lastPacketId": 1000,
- "lastReadTime": 1625812345678,
- "lastWriteTime": 1625812345678
}
]Returns information about the current user authentication session, can be used to see if the user is logged in
{- "schemaUpdate": 0,
- "destinationUpdate": 0,
- "interfaceUpdate": 0
}Allows a user to log in and obtain an authentication token. This endpoint does not require authentication and overrides global security settings.
| username | string The username for login |
| password | string The password for login |
| persistent | boolean Whether the session should be persistent |
| sessionId | string Optional client-provided session ID |
| longLived | boolean Request a long-lived session (e.g. 7 days) |
{- "username": "admin",
- "password": "P@ssw0rd!",
- "persistent": true,
- "sessionId": "session-12345",
- "longLived": true
}{- "status": "string",
- "username": "string",
- "accessMap": {
- "property1": "string",
- "property2": "string"
}, - "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44"
}Refreshes the current JWT cookie used for auth.
{- "status": "string",
- "username": "string",
- "accessMap": {
- "property1": "string",
- "property2": "string"
}, - "uniqueId": "a1e12d74-d756-40d1-9bb3-519def353f44"
}Checks whether the identity has the specified permission on the given resource
| identityId required | string Identity identifier |
| resourceType required | string Resource type |
| resourceKey required | string Resource key or identifier |
| permission required | string Permission name to check |
| explain | boolean If true, the server should include human readable explanation |
{- "identityId": "admin",
- "resourceType": "TOPIC",
- "resourceKey": "/sensors/room1/temp",
- "permission": "publish",
- "explain": true
}{- "decision": "ALLOW",
- "permission": "publish",
- "reason": "string",
- "sources": [
- "string"
]
}Retrieves the read only permissions used by the servers Authorisation
{- "schemaLoadingVersion": 1,
- "permissions": "CONNECT, PUBLISH",
- "resourceTypes": "server, topic, queue"
}Retrieves explicit ACL entries for the specified group, grouped by resource
| groupUuid required | string |
{- "principalType": "IDENTITY",
- "principalId": "admin",
- "entries": [
- {
- "resourceType": "TOPIC",
- "resourceKey": "/sensors/room1/temp",
- "effect": "ALLOW",
- "permissions": [
- "string"
]
}
]
}Retrieves explicit ACL entries for the specified identity, grouped by resource
| userUuid required | string |
{- "principalType": "IDENTITY",
- "principalId": "admin",
- "entries": [
- {
- "resourceType": "TOPIC",
- "resourceKey": "/sensors/room1/temp",
- "effect": "ALLOW",
- "permissions": [
- "string"
]
}
]
}Retrieves explicit ACL entries for the given resource
| resourceType required | string Example: resourceType=TOPIC Resource type |
| resourceKey required | string Example: resourceKey=/sensors/room1/temp Resource key or identifier |
{- "resourceType": "TOPIC",
- "resourceKey": "/sensors/room1/temp",
- "entries": [
- {
- "principalType": "IDENTITY",
- "principalId": "admin",
- "effect": "ALLOW",
- "permissions": [
- "string"
]
}
]
}Replaces the explicit ACL entries for the given resource with the provided set
| batchTimeoutMillis | integer <int64> Default: 5000 |
| resourceType required | string Resource type |
| resourceKey required | string Resource key or identifier |
required | Array of objects (AclEntryDTO) New set of ACL entries for this resource (explicit only) |
{- "resourceType": "TOPIC",
- "resourceKey": "/sensors/room1/temp",
- "entries": [
- {
- "principalType": "IDENTITY",
- "principalId": "admin",
- "effect": "ALLOW",
- "permissions": [
- "string"
]
}
]
}{- "resourceType": "TOPIC",
- "resourceKey": "/sensors/room1/temp",
- "entries": [
- {
- "principalType": "IDENTITY",
- "principalId": "admin",
- "effect": "ALLOW",
- "permissions": [
- "string"
]
}
]
}Returns the current configuration section value and its JSON Schema in a single response.
| name required | string |
{- "config": {
- "schemaLoadingVersion": 1,
- "endPointServerConfigList": [
- {
- "schemaLoadingVersion": 1,
- "name": "MainServer",
- "url": "tcp://localhost:1883",
- "endPointConfig": {
- "schemaLoadingVersion": 1,
- "type": "tcp",
- "discoverable": false,
- "selectorThreadCount": 2,
- "serverReadBufferSize": 10240,
- "serverWriteBufferSize": 10240,
- "proxyProtocolMode": "REQUIRED",
- "allowedProxyHosts": "example.com, localhost, 192.168.1.10, [2001:db8::1]",
- "connectionTimeout": 5000
}, - "saslConfig": {
- "schemaLoadingVersion": 1,
- "realmName": "example-realm",
- "mechanism": "PLAIN",
- "identityProvider": "authProvider123",
- "saslEntries": {
- "entry1": "value1"
}
}, - "protocolConfigs": [
- {
- "schemaLoadingVersion": 1,
- "type": "mqtt",
- "proxyProtocol": false,
- "remoteAuthConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "pass123",
- "clientId": "client123",
- "tokenGenerator": "JWT"
}, - "messageDefaults": {
- "schemaLoadingVersion": 1,
- "expiry": 60000,
- "priority": "NORMAL",
- "qualityOfService": "AT_LEAST_ONCE",
- "responseTopic": "/default/response",
- "contentType": "application/json",
- "schemaId": "default-schema-id",
- "retain": true,
- "meta": true,
- "dataMap": { }
}
}
], - "authenticationRealm": "defaultRealm",
- "backlog": 100,
- "selectorTaskWait": 10,
- "authConfig": {
- "schemaLoadingVersion": 1,
- "username": "user123",
- "password": "password",
- "sessionId": "session-xyz",
- "tokenGenerator": "JWT",
- "tokenConfig": {
- "expiry": 3600
}
}, - "linkTransformation": "Schema-To-Json",
- "linkConfigs": [
- {
- "direction": "pull",
- "remote_namespace": "/+/1/1/GPS_RAW_INT",
- "local_namespace": "/"
}
], - "pluginConnection": false,
- "cost": 10,
- "groupName": "Main data uplink"
}
]
}, - "schema": { }
}Fetches detailed information about the server's central cache, including size, usage statistics, and entries.
{- "enabled": true,
- "lifeTime": 0,
- "scanTime": 0,
- "cacheSize": 0,
- "cacheHits": 0,
- "cacheMisses": 0
}