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 ai-model-controller API

Ai Model

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

This API exposes 5 operations across 3 paths, and defines 35 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.

5 operations 3 paths 35 schemas 1 DELETE2 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 ai-model-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 5

Across 3 paths, the API surfaces 5 operations — 1 DELETE, 2 GET, 2 POST. Each is listed below with its method, path, parameters, and response codes.

ai-model-controller 5

Ai Model

GET
/api/ai/model
Get AI Models (getAiModels)
getAiModels 5 params → 200
POST
/api/ai/model
Create or Update AI Model (saveAiModel)
saveAiModel body → 200
POST
/api/ai/model/chat
Send Request to AI Chat Model (sendChatRequest)
sendChatRequest body → 200
GET
/api/ai/model/{modelUuid}
Get AI Model by ID (getAiModelById)
getAiModelById 1 param → 200
DELETE
/api/ai/model/{modelUuid}
Delete AI Model by ID (deleteAiModelById)
deleteAiModelById 1 param → 200

Schemas 35

The contract defines 35 schemas that model the data the API accepts and returns. The most detailed are AiModel (6 properties), PageDataAiModel (4 properties), GoogleVertexAiGeminiProviderConfig (4 properties), AzureOpenAiProviderConfig (3 properties). Each schema is shown below with its type and property counts.

OllamaProviderConfig
object
2 properties 2 required
AnthropicProviderConfig
object
1 property 1 required
Basic
2 required
AiModelId
object
2 properties 2 required
TbContent
object
1 property 1 required
OllamaAuth
object
1 property 1 required
Token
1 required
GoogleVertexAiGeminiChatModelConfig
2 required
AzureOpenAiProviderConfig
object
3 properties 2 required
GitHubModelsProviderConfig
object
1 property 1 required
AmazonBedrockProviderConfig
object
3 properties 3 required
OpenAiChatModelConfig
2 required
GoogleVertexAiGeminiProviderConfig
object
4 properties 4 required
GoogleAiGeminiChatModelConfig
2 required
TbTextContent
Text-based content part of a user's prompt
1 required
OllamaChatModelConfig
2 required
PageDataAiModel
object
4 properties
MistralAiProviderConfig
object
1 property 1 required
TbChatResponse
object
1 property
AiModelConfig
object
2 properties 1 required
MistralAiChatModelConfig
2 required
AzureOpenAiChatModelConfig
2 required
AiModel
object
6 properties 3 required
TenantId
object
2 properties 2 required
Success
TbChatRequest
object
3 properties 2 required
None
GoogleAiGeminiProviderConfig
object
1 property 1 required
AiChatModelConfigObject
object
2 properties
AnthropicChatModelConfig
2 required
OpenAiProviderConfig
object
2 properties
AmazonBedrockChatModelConfig
2 required
TbUserMessage
object
1 property 1 required
Failure
GitHubModelsChatModelConfig
2 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

thingsboard-ai-model-controller-api-openapi.yml Raw ↑

Other APIs ThingsBoard publishes across the network.

ThingsBoard admin-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
ThingsBoard dashboard-controller API