Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

ThingsBoard dashboard-controller API

Dashboard

ThingsBoard dashboard-controller API is one of 58 APIs that ThingsBoard publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 11 JSON Schema definitions.

Tagged areas include dashboard-controller. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and 11 JSON Schemas.

This API exposes 24 operations across 19 paths, and defines 10 schemas. It is described by OpenAPI 3.1.0, at version 4.3.0.3DEMO.

Requests are made against 2 base URLs: https://demo.thingsboard.io, http://localhost:8080.

24 operations 19 paths 10 schemas 4 DELETE12 GET8 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
4.3.0.3DEMO
Servers
https://demo.thingsboard.io
http://localhost:8080
Authentication
HTTP Loginpassword, API Key
License
Resource Areas
1

Authentication & Security 2

ThingsBoard dashboard-controller API declares 2 security schemes for authenticating requests. It uses HTTP loginpassword authentication (HTTP login form). An API key is passed in the header as X-Authorization (API key form).

  • HTTP login form — Enter Username / Password
  • API key form — Enter the API key value with 'ApiKey' prefix in format: ApiKey Example: ApiKey tb5te51SkLRYpjGrujUGwqkjFvooWBlQpVe2An2Dr3w13wjfxDW NOTE: Use only ONE authentic…

Paths & Operations 24

Across 19 paths, the API surfaces 24 operations — 4 DELETE, 12 GET, 8 POST. Each is listed below with its method, path, parameters, and response codes.

dashboard-controller 24

Dashboard

GET
/api/tenant/dashboard/home/info
Get Tenant Home Dashboard Info (getTenantHomeDashboardInfo)
getTenantHomeDashboardInfo → 200
POST
/api/tenant/dashboard/home/info
Update Tenant Home Dashboard Info (getTenantHomeDashboardInfo)
setTenantHomeDashboardInfo body → 200
POST
/api/edge/{edgeId}/dashboard/{dashboardId}
Assign Dashboard to Edge (assignDashboardToEdge)
assignDashboardToEdge 2 params → 200
DELETE
/api/edge/{edgeId}/dashboard/{dashboardId}
Unassign Dashboard from Edge (unassignDashboardFromEdge)
unassignDashboardFromEdge 2 params → 200
POST
/api/dashboard
Create or Update Dashboard (saveDashboard)
saveDashboard 1 param body → 200
POST
/api/dashboard/{dashboardId}/customers
Update the Dashboard Customers (updateDashboardCustomers)
updateDashboardCustomers 1 param body → 200
POST
/api/dashboard/{dashboardId}/customers/remove
Remove the Dashboard Customers (removeDashboardCustomers)
removeDashboardCustomers 1 param body → 200
POST
/api/dashboard/{dashboardId}/customers/add
Adds the Dashboard Customers (addDashboardCustomers)
addDashboardCustomers 1 param body → 200
POST
/api/customer/{customerId}/dashboard/{dashboardId}
Assign the Dashboard (assignDashboardToCustomer)
assignDashboardToCustomer 2 params → 200
DELETE
/api/customer/{customerId}/dashboard/{dashboardId}
Unassign the Dashboard (unassignDashboardFromCustomer)
unassignDashboardFromCustomer 2 params → 200
POST
/api/customer/public/dashboard/{dashboardId}
Assign the Dashboard to Public Customer (assignDashboardToPublicCustomer)
assignDashboardToPublicCustomer 1 param → 200
DELETE
/api/customer/public/dashboard/{dashboardId}
Unassign the Dashboard from Public Customer (unassignDashboardFromPublicCustomer)
unassignDashboardFromPublicCustomer 1 param → 200
GET
/api/tenant/{tenantId}/dashboards
Get Tenant Dashboards by System Administrator (getTenantDashboards)
getTenantDashboards 6 params → 200
GET
/api/tenant/dashboards
Get Tenant Dashboards (getTenantDashboards)
getTenantDashboards_1 6 params → 200
GET
/api/edge/{edgeId}/dashboards
Get Edge Dashboards (getEdgeDashboards)
getEdgeDashboards 6 params → 200
GET
/api/dashboards
Get Dashboards by Dashboard Ids (getDashboardsByIds)
getDashboardsByIds 1 param → 200
GET
/api/dashboard/{dashboardId}
Get Dashboard (getDashboardById)
getDashboardById 3 params → 200
DELETE
/api/dashboard/{dashboardId}
Delete the Dashboard (deleteDashboard)
deleteDashboard 1 param → 200
GET
/api/dashboard/serverTime
Get Server Time (getServerTime)
getServerTime → 200
GET
/api/dashboard/maxDatapointsLimit
Get Max Data Points Limit (getMaxDatapointsLimit)
getMaxDatapointsLimit → 200
GET
/api/dashboard/info/{dashboardId}
Get Dashboard Info (getDashboardInfoById)
getDashboardInfoById 1 param → 200
GET
/api/dashboard/home
Get Home Dashboard (getHomeDashboard)
getHomeDashboard 1 param → 200
GET
/api/dashboard/home/info
Get Home Dashboard Info (getHomeDashboardInfo)
getHomeDashboardInfo → 200
GET
/api/customer/{customerId}/dashboards
Get Customer Dashboards (getCustomerDashboards)
getCustomerDashboards 7 params → 200

Schemas 10

The contract defines 10 schemas that model the data the API accepts and returns. The most detailed are Dashboard (12 properties), ResourceExportData (11 properties), DashboardInfo (10 properties), ShortCustomerInfo (4 properties). Each schema is shown below with its type and property counts.

HomeDashboardInfo
object
A JSON object that represents home dashboard id and other parameters
2 properties
JsonNode
A value representing the any type (object or primitive)
Dashboard
object
12 properties 1 required
ShortCustomerInfo
object
4 properties
DashboardInfo
object
10 properties 1 required
DashboardId
object
2 properties 2 required
PageDataDashboardInfo
object
4 properties
TenantId
object
2 properties 2 required
CustomerId
object
2 properties 2 required
ResourceExportData
object
11 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

thingsboard-dashboard-controller-api-openapi.yml Raw ↑

Other APIs ThingsBoard publishes across the network.

ThingsBoard admin-controller API
ThingsBoard ai-model-controller API
ThingsBoard alarm-comment-controller API
ThingsBoard alarm-controller API
ThingsBoard api-key-controller API
ThingsBoard asset-controller API
ThingsBoard asset-profile-controller API
ThingsBoard audit-log-controller API
ThingsBoard auth-controller API
ThingsBoard calculated-field-controller API
ThingsBoard component-descriptor-controller API
ThingsBoard customer-controller API