# ThingsBoard ThingsBoard Admin API
# Source: https://demo.thingsboard.io/v3/api-docs (Apache 2.0)
openapi: 3.1.0
info:
title: ThingsBoard Admin API
description: "ThingsBoard Admin API \u2014 subset of the ThingsBoard REST API (open-source IoT platform). Covers: Admin, Audit Log, Event, Usage Info, Queue, Queue Stats, Mail Config Template, Qr Code\
\ Settings, Job."
version: 4.3.0.3DEMO
contact:
name: ThingsBoard team
url: https://thingsboard.io
email: [email protected]
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://demo.thingsboard.io
description: ThingsBoard Live Demo
- url: http://localhost:8080
description: Local ThingsBoard server
tags:
- name: admin-controller
description: Admin
- name: audit-log-controller
description: Audit Log
- name: event-controller
description: Event
- name: usage-info-controller
description: Usage Info
- name: queue-controller
description: Queue
- name: queue-stats-controller
description: Queue Stats
- name: mail-config-template-controller
description: Mail Config Template
- name: qr-code-settings-controller
description: Qr Code Settings
- name: job-controller
description: Job
paths:
/api/queues:
get:
tags:
- queue-controller
summary: Get Queues (getTenantQueuesByServiceType)
description: "Returns a page of queues registered in the platform. You can specify parameters to filter the results. The result is wrapped with PageData object that allows you to iterate over result\
\ set using pagination. See response schema for more details. \n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority."
operationId: getTenantQueuesByServiceType
parameters:
- name: serviceType
in: query
description: Service type (implemented only for the TB-RULE-ENGINE)
required: true
schema:
type: string
enum:
- TB-RULE-ENGINE
- TB-CORE
- TB-TRANSPORT
- JS-EXECUTOR
- name: pageSize
in: query
description: Maximum amount of entities in a one page
required: true
schema:
type: integer
format: int32
- name: page
in: query
description: Sequence number of page starting from 0
required: true
schema:
type: integer
format: int32
- name: textSearch
in: query
description: The case insensitive 'substring' filter based on the queue name.
required: false
schema:
type: string
- name: sortProperty
in: query
description: Property of entity to sort by
required: false
schema:
type: string
enum:
- createdTime
- name
- topic
- name: sortOrder
in: query
description: Sort order. ASC (ASCENDING) or DESC (DESCENDING)
required: false
schema:
type: string
enum:
- ASC
- DESC
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PageDataQueue'
post:
tags:
- queue-controller
summary: Create or Update Queue (saveQueue)
description: "Create or update the Queue. When creating queue, platform generates Queue Id as [time-based UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier#Version_1_(date-time_and_MAC_address)).\
\ Specify existing Queue id to update the queue. Referencing non-existing Queue Id will cause 'Not Found' error.\n\nQueue name is unique in the scope of sysadmin. Remove 'id', 'tenantId' from the\
\ request body example (below) to create new Queue entity. \n\nAvailable for users with 'SYS_ADMIN' authority."
operationId: saveQueue
parameters:
- name: serviceType
in: query
description: Service type (implemented only for the TB-RULE-ENGINE)
required: true
schema:
type: string
enum:
- TB-RULE-ENGINE
- TB-CORE
- TB-TRANSPORT
- JS-EXECUTOR
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Queue'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Queue'
/api/mobile/qr/settings:
get:
tags:
- qr-code-settings-controller
summary: Get Mobile Application Settings (getMobileAppSettings)
description: 'The response payload contains configuration for android/iOS applications and platform qr code widget settings.
Available for any authorized user. '
operationId: getQrCodeSettings
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QrCodeSettings'
post:
tags:
- qr-code-settings-controller
summary: Create or Update the Mobile Application Settings (saveMobileAppSettings)
description: 'The request payload contains configuration for android/iOS applications and platform qr code widget settings.
Available for users with ''SYS_ADMIN'' authority.'
operationId: saveQrCodeSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/QrCodeSettings'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/QrCodeSettings'
/api/job/{id}/reprocess:
post:
tags:
- job-controller
operationId: reprocessJob
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
/api/job/{id}/cancel:
post:
tags:
- job-controller
operationId: cancelJob
parameters:
- name: id
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
/api/events/{entityType}/{entityId}:
get:
tags:
- event-controller
summary: Get Events (Deprecated)
description: 'Returns a page of events for specified entity. Deprecated and will be removed in next minor release. The call was deprecated to improve the performance of the system. Current implementation
will return ''Lifecycle'' events only. Use ''Get events by type'' or ''Get events by filter'' instead. You can specify parameters to filter the results. The result is wrapped with PageData object
that allows you to iterate over result set using pagination. See response schema for more details. '
operationId: getEvents
parameters:
- name: entityType
in: path
description: A string value representing the entity type. For example, 'DEVICE'
required: true
schema:
type: string
- name: entityId
in: path
description: A string value representing the entity id. For example, '784f394c-42b6-435a-983c-b7beff2784f9'
required: true
schema:
type: string
- name: tenantId
in: query
description: A string value representing the tenant id. For example, '784f394c-42b6-435a-983c-b7beff2784f9'
required: true
schema:
type: string
- name: pageSize
in: query
description: Maximum amount of entities in a one page
required: true
schema:
type: integer
format: int32
- name: page
in: query
description: Sequence number of page starting from 0
required: true
schema:
type: integer
format: int32
- name: textSearch
in: query
description: The value is not used in searching.
required: false
schema:
type: string
- name: sortProperty
in: query
description: Property of entity to sort by
required: false
schema:
type: string
enum:
- ts
- id
- name: sortOrder
in: query
description: Sort order. ASC (ASCENDING) or DESC (DESCENDING)
required: false
schema:
type: string
enum:
- ASC
- DESC
- name: startTime
in: query
description: Timestamp. Events with creation time before it won't be queried.
required: false
schema:
type: integer
format: int64
- name: endTime
in: query
description: Timestamp. Events with creation time after it won't be queried.
required: false
schema:
type: integer
format: int64
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PageDataEventInfo'
post:
tags:
- event-controller
summary: Get Events by Event Filter (getEvents)
description: "Returns a page of events for the chosen entity by specifying the event filter. You can specify parameters to filter the results. The result is wrapped with PageData object that allows\
\ you to iterate over result set using pagination. See response schema for more details. \n\n# Event Filter Definition\n\n6 different eventFilter objects could be set for different event types.\
\ The eventType field is required. Others are optional. If some of them are set, the filtering will be applied according to them. See the examples below for all the fields used for each event type\
\ filtering. \n\nNote,\n\n * 'server' - string value representing the server name, identifier or ip address where the platform is running;\n * 'errorStr' - the case insensitive 'contains' filter\
\ based on error message.\n\n## Error Event Filter\n\n```json\n{\n \"eventType\":\"ERROR\",\n \"server\":\"ip-172-31-24-152\",\n \"method\":\"onClusterEventMsg\",\n \"errorStr\":\"Error\
\ Message\"\n}\n```\n\n * 'method' - string value representing the method name when the error happened.\n\n## Lifecycle Event Filter\n\n```json\n{\n \"eventType\":\"LC_EVENT\",\n \"server\"\
:\"ip-172-31-24-152\",\n \"event\":\"STARTED\",\n \"status\":\"Success\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n * 'event' - string value representing the lifecycle event type;\n * 'status'\
\ - string value representing status of the lifecycle event.\n\n## Statistics Event Filter\n\n```json\n{\n \"eventType\":\"STATS\",\n \"server\":\"ip-172-31-24-152\",\n \"messagesProcessed\"\
:10,\n \"errorsOccurred\":5\n}\n```\n\n * 'messagesProcessed' - the minimum number of successfully processed messages;\n * 'errorsOccurred' - the minimum number of errors occurred during messages\
\ processing.\n\n## Debug Rule Node Event Filter\n\n```json\n{\n \"eventType\":\"DEBUG_RULE_NODE\",\n \"msgDirectionType\":\"IN\",\n \"server\":\"ip-172-31-24-152\",\n \"dataSearch\":\"\
humidity\",\n \"metadataSearch\":\"deviceName\",\n \"entityName\":\"DEVICE\",\n \"relationType\":\"Success\",\n \"entityId\":\"de9d54a0-2b7a-11ec-a3cc-23386423d98f\",\n \"msgType\":\"\
POST_TELEMETRY_REQUEST\",\n \"isError\":\"false\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n## Debug Rule Chain Event Filter\n\n```json\n{\n \"eventType\":\"DEBUG_RULE_CHAIN\",\n \"msgDirectionType\"\
:\"IN\",\n \"server\":\"ip-172-31-24-152\",\n \"dataSearch\":\"humidity\",\n \"metadataSearch\":\"deviceName\",\n \"entityName\":\"DEVICE\",\n \"relationType\":\"Success\",\n \"entityId\"\
:\"de9d54a0-2b7a-11ec-a3cc-23386423d98f\",\n \"msgType\":\"POST_TELEMETRY_REQUEST\",\n \"isError\":\"false\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n * 'msgDirectionType' - string value\
\ representing msg direction type (incoming to entity or outcoming from entity);\n * 'dataSearch' - the case insensitive 'contains' filter based on data (key and value) for the message;\n * 'metadataSearch'\
\ - the case insensitive 'contains' filter based on metadata (key and value) for the message;\n * 'entityName' - string value representing the entity type;\n * 'relationType' - string value representing\
\ the type of message routing;\n * 'entityId' - string value representing the entity id in the event body (originator of the message);\n * 'msgType' - string value representing the message type;\n\
\ * 'isError' - boolean value to filter the errors.\n\n## Debug Calculated Field Event Filter\n\n```json\n{\n \"eventType\":\"DEBUG_CALCULATED_FIELD\",\n \"server\":\"ip-172-31-24-152\",\n \
\ \"isError\":\"false\",\n \"errorStr\":\"Error Message\"\n \"entityId\":\"cf4b8741-f618-471f-ae08-d881ca7f9fe9\",\n \"msgId\":\"5cf7d3a0-aee7-40dd-a737-ade05528e7eb\",\n \"msgType\":\"\
POST_TELEMETRY_REQUEST\",\n \"arguments\":\"{\n \"x\": {\n \"ts\": 1739432016629,\n \"value\": 20\n },\n \"y\": {\n \"ts\": 1739429717656,\n \"value\": 12\n }\n\
\ }\",\n \"result\":\"{\n \"x + y\": 32\n }\",\n}\n```\n\n * 'entityId' - string value representing the entity id in the event body;\n * 'entityType' - string value representing the entity\
\ type;\n * 'msgId' - string value representing the message id in the rule engine;\n * 'msgType' - string value representing the message type;\n * 'arguments' - string value representing the arguments\
\ that were used in the calculation performed;\n * 'result' - string value representing the result of a calculation;\n * 'isError' - boolean value to filter the errors.\n\n"
operationId: getEvents_1
parameters:
- name: entityType
in: path
description: A string value representing the entity type. For example, 'DEVICE'
required: true
schema:
type: string
- name: entityId
in: path
description: A string value representing the entity id. For example, '784f394c-42b6-435a-983c-b7beff2784f9'
required: true
schema:
type: string
- name: tenantId
in: query
description: A string value representing the tenant id. For example, '784f394c-42b6-435a-983c-b7beff2784f9'
required: true
schema:
type: string
- name: pageSize
in: query
description: Maximum amount of entities in a one page
required: true
schema:
type: integer
format: int32
- name: page
in: query
description: Sequence number of page starting from 0
required: true
schema:
type: integer
format: int32
- name: textSearch
in: query
description: The value is not used in searching.
required: false
schema:
type: string
- name: sortProperty
in: query
description: Property of entity to sort by
required: false
schema:
type: string
enum:
- ts
- id
- name: sortOrder
in: query
description: Sort order. ASC (ASCENDING) or DESC (DESCENDING)
required: false
schema:
type: string
enum:
- ASC
- DESC
- name: startTime
in: query
description: Timestamp. Events with creation time before it won't be queried.
required: false
schema:
type: integer
format: int64
- name: endTime
in: query
description: Timestamp. Events with creation time after it won't be queried.
required: false
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
description: A JSON value representing the event filter.
oneOf:
- $ref: '#/components/schemas/CalculatedFieldDebugEventFilter'
- $ref: '#/components/schemas/ErrorEventFilter'
- $ref: '#/components/schemas/LifeCycleEventFilter'
- $ref: '#/components/schemas/RuleChainDebugEventFilter'
- $ref: '#/components/schemas/RuleNodeDebugEventFilter'
- $ref: '#/components/schemas/StatisticsEventFilter'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/PageDataEventInfo'
/api/events/{entityType}/{entityId}/clear:
post:
tags:
- event-controller
summary: Clear Events (clearEvents)
description: Clears events by filter for specified entity.
operationId: clearEvents
parameters:
- name: entityType
in: path
description: A string value representing the entity type. For example, 'DEVICE'
required: true
schema:
type: string
- name: entityId
in: path
description: A string value representing the entity id. For example, '784f394c-42b6-435a-983c-b7beff2784f9'
required: true
schema:
type: string
- name: startTime
in: query
description: Timestamp. Events with creation time before it won't be queried.
required: false
schema:
type: integer
format: int64
- name: endTime
in: query
description: Timestamp. Events with creation time after it won't be queried.
required: false
schema:
type: integer
format: int64
requestBody:
content:
application/json:
schema:
description: "# Event Filter Definition\n\n6 different eventFilter objects could be set for different event types. The eventType field is required. Others are optional. If some of them are\
\ set, the filtering will be applied according to them. See the examples below for all the fields used for each event type filtering. \n\nNote,\n\n * 'server' - string value representing\
\ the server name, identifier or ip address where the platform is running;\n * 'errorStr' - the case insensitive 'contains' filter based on error message.\n\n## Error Event Filter\n\n```json\n\
{\n \"eventType\":\"ERROR\",\n \"server\":\"ip-172-31-24-152\",\n \"method\":\"onClusterEventMsg\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n * 'method' - string value representing\
\ the method name when the error happened.\n\n## Lifecycle Event Filter\n\n```json\n{\n \"eventType\":\"LC_EVENT\",\n \"server\":\"ip-172-31-24-152\",\n \"event\":\"STARTED\",\n \
\ \"status\":\"Success\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n * 'event' - string value representing the lifecycle event type;\n * 'status' - string value representing status of\
\ the lifecycle event.\n\n## Statistics Event Filter\n\n```json\n{\n \"eventType\":\"STATS\",\n \"server\":\"ip-172-31-24-152\",\n \"messagesProcessed\":10,\n \"errorsOccurred\"\
:5\n}\n```\n\n * 'messagesProcessed' - the minimum number of successfully processed messages;\n * 'errorsOccurred' - the minimum number of errors occurred during messages processing.\n\n\
## Debug Rule Node Event Filter\n\n```json\n{\n \"eventType\":\"DEBUG_RULE_NODE\",\n \"msgDirectionType\":\"IN\",\n \"server\":\"ip-172-31-24-152\",\n \"dataSearch\":\"humidity\"\
,\n \"metadataSearch\":\"deviceName\",\n \"entityName\":\"DEVICE\",\n \"relationType\":\"Success\",\n \"entityId\":\"de9d54a0-2b7a-11ec-a3cc-23386423d98f\",\n \"msgType\":\"POST_TELEMETRY_REQUEST\"\
,\n \"isError\":\"false\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n## Debug Rule Chain Event Filter\n\n```json\n{\n \"eventType\":\"DEBUG_RULE_CHAIN\",\n \"msgDirectionType\"\
:\"IN\",\n \"server\":\"ip-172-31-24-152\",\n \"dataSearch\":\"humidity\",\n \"metadataSearch\":\"deviceName\",\n \"entityName\":\"DEVICE\",\n \"relationType\":\"Success\",\n \
\ \"entityId\":\"de9d54a0-2b7a-11ec-a3cc-23386423d98f\",\n \"msgType\":\"POST_TELEMETRY_REQUEST\",\n \"isError\":\"false\",\n \"errorStr\":\"Error Message\"\n}\n```\n\n * 'msgDirectionType'\
\ - string value representing msg direction type (incoming to entity or outcoming from entity);\n * 'dataSearch' - the case insensitive 'contains' filter based on data (key and value) for\
\ the message;\n * 'metadataSearch' - the case insensitive 'contains' filter based on metadata (key and value) for the message;\n * 'entityName' - string value representing the entity type;\n\
\ * 'relationType' - string value representing the type of message routing;\n * 'entityId' - string value representing the entity id in the event body (originator of the message);\n * 'msgType'\
\ - string value representing the message type;\n * 'isError' - boolean value to filter the errors.\n\n## Debug Calculated Field Event Filter\n\n```json\n{\n \"eventType\":\"DEBUG_CALCULATED_FIELD\"\
,\n \"server\":\"ip-172-31-24-152\",\n \"isError\":\"false\",\n \"errorStr\":\"Error Message\"\n \"entityId\":\"cf4b8741-f618-471f-ae08-d881ca7f9fe9\",\n \"msgId\":\"5cf7d3a0-aee7-40dd-a737-ade05528e7eb\"\
,\n \"msgType\":\"POST_TELEMETRY_REQUEST\",\n \"arguments\":\"{\n \"x\": {\n \"ts\": 1739432016629,\n \"value\": 20\n },\n \"y\": {\n \"ts\": 1739429717656,\n\
\ \"value\": 12\n }\n }\",\n \"result\":\"{\n \"x + y\": 32\n }\",\n}\n```\n\n * 'entityId' - string value representing the entity id in the event body;\n * 'entityType' -\
\ string value representing the entity type;\n * 'msgId' - string value representing the message id in the rule engine;\n * 'msgType' - string value representing the message type;\n * 'arguments'\
\ - string value representing the arguments that were used in the calculation performed;\n * 'result' - string value representing the result of a calculation;\n * 'isError' - boolean value\
\ to filter the errors.\n\n"
oneOf:
- $ref: '#/components/schemas/CalculatedFieldDebugEventFilter'
- $ref: '#/components/schemas/ErrorEventFilter'
- $ref: '#/components/schemas/LifeCycleEventFilter'
- $ref: '#/components/schemas/RuleChainDebugEventFilter'
- $ref: '#/components/schemas/RuleNodeDebugEventFilter'
- $ref: '#/components/schemas/StatisticsEventFilter'
required: true
responses:
'200':
description: OK
/api/admin/settings:
post:
tags:
- admin-controller
summary: Creates or Updates the Administration Settings (saveAdminSettings)
description: 'Creates or Updates the Administration Settings. Platform generates random Administration Settings Id during settings creation. The Administration Settings Id will be present in the response.
Specify the Administration Settings Id when you would like to update the Administration Settings. Referencing non-existing Administration Settings Id will cause an error.
Available for users with ''SYS_ADMIN'' authority.'
operationId: saveAdminSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AdminSettings'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AdminSettings'
/api/admin/settings/testSms:
post:
tags:
- admin-controller
summary: Send Test Sms (sendTestSms)
description: "Attempts to send test sms to the System Administrator User using SMS Settings and phone number provided as a parameters of the request. \n\nAvailable for users with 'SYS_ADMIN' authority."
operationId: sendTestSms
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/TestSmsRequest'
required: true
responses:
'200':
description: OK
/api/admin/settings/testMail:
post:
tags:
- admin-controller
summary: Send Test Email (sendTestMail)
description: "Attempts to send test email to the System Administrator User using Mail Settings provided as a parameter. You may change the 'To' email in the user profile of the System Administrator.\
\ \n\nAvailable for users with 'SYS_ADMIN' authority."
operationId: sendTestMail
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AdminSettings'
required: true
responses:
'200':
description: OK
/api/admin/securitySettings:
get:
tags:
- admin-controller
summary: Get the Security Settings Object (getSecuritySettings)
description: 'Get the Security Settings object that contains password policy, etc.
Available for users with ''SYS_ADMIN'' authority.'
operationId: getSecuritySettings
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SecuritySettings'
post:
tags:
- admin-controller
summary: Update Security Settings (saveSecuritySettings)
description: 'Updates the Security Settings object that contains password policy, etc.
Available for users with ''SYS_ADMIN'' authority.'
operationId: saveSecuritySettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SecuritySettings'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/SecuritySettings'
/api/admin/repositorySettings:
get:
tags:
- admin-controller
summary: Get Repository Settings (getRepositorySettings)
description: "Get the repository settings object. \n\nAvailable for users with 'TENANT_ADMIN' authority."
operationId: getRepositorySettings
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RepositorySettings'
post:
tags:
- admin-controller
summary: Creates or Updates the Repository Settings (saveRepositorySettings)
description: "Creates or Updates the repository settings object. \n\nAvailable for users with 'TENANT_ADMIN' authority."
operationId: saveRepositorySettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RepositorySettings'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/RepositorySettings'
delete:
tags:
- admin-controller
summary: Delete Repository Settings (deleteRepositorySettings)
description: 'Deletes the repository settings.
Available for users with ''TENANT_ADMIN'' authority.'
operationId: deleteRepositorySettings
responses:
'200':
description: OK
/api/admin/repositorySettings/checkAccess:
post:
tags:
- admin-controller
summary: Check Repository Access (checkRepositoryAccess)
description: "Attempts to check repository access. \n\nAvailable for users with 'TENANT_ADMIN' authority."
operationId: checkRepositoryAccess
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/RepositorySettings'
required: true
responses:
'200':
description: OK
/api/admin/jwtSettings:
get:
tags:
- admin-controller
summary: Get the JWT Settings Object (getJwtSettings)
description: "Get the JWT Settings object that contains JWT token policy, etc. \n\nAvailable for users with 'SYS_ADMIN' authority."
operationId: getJwtSettings
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/JwtSettings'
post:
tags:
- admin-controller
summary: Update JWT Settings (saveJwtSettings)
description: 'Updates the JWT Settings object that contains JWT token policy, etc. The tokenSigningKey field is a Base64 encoded string.
Available for users with ''SYS_ADMIN'' authority.'
operationId: saveJwtSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JwtSettings'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/JwtPair'
/api/admin/autoCommitSettings:
get:
tags:
- admin-controller
summary: Get Auto Commit Settings (getAutoCommitSettings)
description: "Get the auto commit settings object. \n\nAvailable for users with 'TENANT_ADMIN' authority."
operationId: getAutoCommitSettings
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AutoCommitSettings'
post:
tags:
- admin-controller
summary: Creates or Updates the Auto Commit Settings (saveAutoCommitSettings)
description: "Creates or Updates the auto commit settings object. \n\nAvailable for users with 'TENANT_ADMIN' authority."
operationId: saveAutoCommitSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AutoCommitSettings'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AutoCommitSettings'
delete:
tags:
- admin-controller
summary: Delete Auto Commit Settings (deleteAutoCommitSettings)
description: 'Deletes the auto commit settings.
Available for users with ''TENANT_ADMIN'' authority.'
operationId: deleteAutoCommitSettings
responses:
'200':
description: OK
/api/usage:
get:
tags:
- usage-info-controller
operationId: getTenantUsageInfo
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/UsageInfo'
/api/queues/{queueId}:
get:
tags:
- queue-controller
summary: Get Queue (getQueueById)
description: "Fetch the Queue object based on the provided Queue Id. \n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority."
operationId: getQueueById
parameters:
- name: queueId
in: path
description: A string value representing the queue id. For example, '784f394c-42b6-435a-983c-b7beff2784f9'
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/Queue'
delete:
tags:
- queue-controller
summary: Delete Queue (deleteQueue)
description: "Deletes the Queue. \n\nAvailable for users with 'SYS_ADMIN' authority."
operationId: deleteQueue
parameters:
- name: queueId
# --- truncated at 32 KB (108 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thingsboard/refs/heads/main/openapi/thingsboard-admin-openapi.yml