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 entities-version-control-controller API

Entities Version Control

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

This API exposes 12 operations across 11 paths, and defines 80 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.

12 operations 11 paths 80 schemas 10 GET2 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 entities-version-control-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 12

Across 11 paths, the API surfaces 12 operations — 10 GET, 2 POST. Each is listed below with its method, path, parameters, and response codes.

entities-version-control-controller 12

Entities Version Control

GET
/api/entities/vc/version
List All Versions (listVersions)
listVersions 6 params → 200
POST
/api/entities/vc/version
Save Entities Version (saveEntitiesVersion)
saveEntitiesVersion body → 200
POST
/api/entities/vc/entity
Load Entities Version (loadEntitiesVersion)
loadEntitiesVersion body → 200
GET
/api/entities/vc/version/{requestId}/status
Get Version Create Request Status (getVersionCreateRequestStatus)
getVersionCreateRequestStatus 1 param → 200
GET
/api/entities/vc/version/{entityType}
List Entity Type Versions (listEntityTypeVersions)
listEntityTypeVersions 7 params → 200
GET
/api/entities/vc/version/{entityType}/{externalEntityUuid}
List Entity Versions (listEntityVersions)
listEntityVersions 8 params → 200
GET
/api/entities/vc/info/{versionId}/{entityType}/{externalEntityUuid}
Get Entity Data Info (getEntityDataInfo)
getEntityDataInfo 3 params → 200
GET
/api/entities/vc/entity/{versionId}
List All Entities at Version (listAllEntitiesAtVersion)
listAllEntitiesAtVersion 1 param → 200
GET
/api/entities/vc/entity/{requestId}/status
Get Version Load Request Status (getVersionLoadRequestStatus)
getVersionLoadRequestStatus 1 param → 200
GET
/api/entities/vc/entity/{entityType}/{versionId}
List Entities at Version (listEntitiesAtVersion)
listEntitiesAtVersion 2 params → 200
GET
/api/entities/vc/diff/{entityType}/{internalEntityUuid}
Compare Entity Data to Version (compareEntityDataToVersion)
compareEntityDataToVersion 3 params → 200
GET
/api/entities/vc/branches
List Branches (listBranches)
listBranches → 200

Schemas 80

The contract defines 80 schemas that model the data the API accepts and returns. The most detailed are OtaPackage (18 properties), RuleNode (13 properties), WidgetTypeDetails (13 properties), Device (13 properties). Each schema is shown below with its type and property counts.

WidgetsBundle
object
A JSON value representing the Widget Bundle.
11 properties
RuleNodeId
object
2 properties 2 required
EntityRelation
object
A JSON value representing the relation.
6 properties 4 required
OutputStrategy
PageDataEntityVersion
object
4 properties
AttributesOutput
VersionCreateConfig
object
4 properties
EntityDataDiff
object
2 properties
CurrentOwnerDynamicSourceConfiguration
DeviceConfiguration
object
1 property 1 required
VersionedEntityInfo
object
1 property
AttributesImmediateOutputStrategy
VersionCreationResult
object
6 properties
RuleChainMetaData
object
A JSON value representing the rule chain metadata.
6 properties 5 required
Lwm2mDeviceTransportConfiguration
RuleChainConnectionInfo
object
4 properties 4 required
WidgetTypeId
object
2 properties 2 required
DeviceId
object
2 properties 2 required
DeviceCredentials
object
A JSON value representing the device credentials.
7 properties 3 required
EntityLoadError
object
4 properties
AttributeExportData
object
7 properties
Device
object
13 properties 2 required
OtaPackageExportData
AttributesRuleChainOutputStrategy
SimpleCalculatedFieldConfiguration
object
4 properties 2 required
Argument
object
6 properties
RuleChainId
object
2 properties 2 required
DeviceCredentialsId
object
1 property 1 required
DeviceProfileId
object
2 properties 2 required
RelationPathQueryDynamicSourceConfiguration
SingleEntityVersionCreateRequest
SnmpDeviceTransportConfiguration
DefaultDeviceTransportConfiguration
RuleNode
object
13 properties
EntityVersion
object
4 properties
EntityTypeVersionLoadRequest
TimeSeriesRuleChainOutputStrategy
CalculatedFieldId
object
2 properties 2 required
RelationPathLevel
object
2 properties 2 required
TimeSeriesOutput
EntityTypeVersionLoadConfig
object
6 properties
EntityTypeLoadResult
object
4 properties
WidgetTypeExportData
MqttDeviceTransportConfiguration
NodeConnectionInfo
object
3 properties 3 required
EntityDataInfo
object
4 properties
ResourceExportData
object
11 properties
EntityId
object
2 properties 2 required
CalculatedField
object
11 properties 1 required
ComplexVersionCreateRequest
DefaultDeviceConfiguration
OtaPackageId
object
2 properties 2 required
JsonNode
A value representing the any type (object or primitive)
DeviceExportData
RuleChainExportData
RuleChain
object
A JSON value representing the rule chain.
11 properties 2 required
SingleEntityVersionLoadRequest
VersionLoadRequest
object
2 properties
DeviceTransportConfiguration
object
1 property 1 required
EntityExportDataObject
object
5 properties
WidgetTypeDetails
object
A JSON value representing the Widget Type Details.
13 properties
TimeSeriesOutputStrategy
object
1 property 1 required
DeviceData
object
2 properties
CustomerId
object
2 properties 2 required
WidgetsBundleId
object
2 properties 2 required
WidgetsBundleExportData
EntityTypeVersionCreateConfig
object
7 properties
OtaPackage
object
18 properties
DebugSettings
object
3 properties
CoapDeviceTransportConfiguration
Output
object
5 properties 1 required
VersionCreateRequest
object
3 properties
VersionLoadResult
object
3 properties
ReferencedEntityKey
object
3 properties
CfArgumentDynamicSourceConfiguration
object
1 property 1 required
AttributesOutputStrategy
object
1 property 1 required
TenantId
object
2 properties 2 required
BranchInfo
object
2 properties
VersionLoadConfig
object
4 properties
TimeSeriesImmediateOutputStrategy

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

thingsboard-entities-version-control-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