How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

ThingsBoard asset-controller API

Asset

ThingsBoard asset-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 asset-controller. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and 11 JSON Schemas.

This API exposes 18 operations across 15 paths, and defines 16 schemas. It is described by OpenAPI 3.2.0, at version 4.3.0.3DEMO.

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

18 operations 15 paths 16 schemas 3 DELETE9 GET6 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.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 asset-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 18

Across 15 paths, the API surfaces 18 operations — 3 DELETE, 9 GET, 6 POST. Each is listed below with its method, path, parameters, and response codes.

asset-controller 18

Asset

POST
/api/edge/{edgeId}/asset/{assetId}
Assign Asset to Edge (assignAssetToEdge)
assignAssetToEdge 2 params → 200
DELETE
/api/edge/{edgeId}/asset/{assetId}
Unassign Asset from Edge (unassignAssetFromEdge)
unassignAssetFromEdge 2 params → 200
POST
/api/customer/{customerId}/asset/{assetId}
Assign Asset to Customer (assignAssetToCustomer)
assignAssetToCustomer 2 params → 200
POST
/api/customer/public/asset/{assetId}
Make Asset Publicly Available (assignAssetToPublicCustomer)
assignAssetToPublicCustomer 1 param → 200
GET
/api/assets
Get Assets by Ids (getAssetsByIds)
getAssetsByIds 1 param → 200
POST
/api/assets
Find Related Assets (findByQuery)
findByQuery_4 body → 200
POST
/api/asset
Create or Update Asset (saveAsset)
saveAsset 3 params body → 200
POST
/api/asset/bulk_import
Import the Bulk of Assets (processAssetsBulkImport)
processAssetsBulkImport body → 200
GET
/api/tenant/assets
Get Tenant Asset (getTenantAsset)
getTenantAssets 7 params → 200
GET
/api/tenant/assetInfos
Get Tenant Asset Infos (getTenantAssetInfos)
getTenantAssetInfos 7 params → 200
GET
/api/edge/{edgeId}/assets
Get Assets Assigned to Edge (getEdgeAssets)
getEdgeAssets 9 params → 200
GET
/api/customer/{customerId}/assets
Get Customer Assets (getCustomerAssets)
getCustomerAssets 7 params → 200
GET
/api/customer/{customerId}/assetInfos
Get Customer Asset Infos (getCustomerAssetInfos)
getCustomerAssetInfos 8 params → 200
GET
/api/asset/{assetId}
Get Asset (getAssetById)
getAssetById 1 param → 200
DELETE
/api/asset/{assetId}
Delete Asset (deleteAsset)
deleteAsset 1 param → 200
GET
/api/asset/typesdeprecated
Get Asset Types (getAssetTypes)
getAssetTypes → 200
GET
/api/asset/info/{assetId}
Get Asset Info (getAssetInfoById)
getAssetInfoById 1 param → 200
DELETE
/api/customer/asset/{assetId}
Unassign Asset from Customer (unassignAssetFromCustomer)
unassignAssetFromCustomer 1 param → 200

Schemas 16

The contract defines 16 schemas that model the data the API accepts and returns. The most detailed are AssetInfo (13 properties), Asset (10 properties), RelationsSearchParameters (6 properties), Mapping (4 properties). Each schema is shown below with its type and property counts.

Mapping
object
4 properties
ColumnMapping
object
2 properties
BulkImportRequest
object
2 properties
TenantId
object
2 properties 2 required
PageDataAssetInfo
object
4 properties
AssetInfo
object
13 properties 1 required
AssetSearchQuery
object
3 properties
EntitySubtype
object
3 properties
BulkImportResultAsset
object
4 properties
Asset
object
10 properties 1 required
RelationsSearchParameters
object
6 properties
JsonNode
A value representing the any type (object or primitive)
AssetProfileId
object
2 properties 2 required
CustomerId
object
2 properties 2 required
AssetId
object
2 properties 2 required
PageDataAsset
object
4 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

thingsboard-asset-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-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
ThingsBoard dashboard-controller API
Where this information came from

This is an independent, third-party profile of ThingsBoard asset-controller API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.