n8n is a workflow automation platform that combines traditional business process automation with AI capabilities.
The ThingsBoard n8n Node provides deep and native integration between n8n and the ThingsBoard IoT Platform, enabling you to manage IoT infrastructure directly from n8n workflows.
- Manage IoT devices, assets, and customers directly from n8n workflows
- Access and manipulate telemetry data in real-time with attribute and time-series operations
- Monitor alarms and create automated responses based on alarm severity and type
- Navigate entity relationships to understand your IoT infrastructure topology
- Build AI-powered IoT automation using n8n AI Agents with natural language commands
- Automate complex IoT workflows with 61 operations across 8 resources (51 operations for Community Edition)
For detailed documentation including usage examples, workflow patterns, and API reference, visit:
ThingsBoard n8n Node Documentation
npm install @thingsboard/n8n-nodes-thingsboard- In n8n, add ThingsBoard credentials:
- Base URL:
https://demo.thingsboard.io,https://thingsboard.cloudor your instance URL - Authentication Type: Choose API Key (recommended) or Username / Password
- API Key: Your ThingsBoard API key (see API Key documentation)
- Base URL:
- Add the ThingsBoard node to your workflow
- Select a resource (Device, Asset, etc.) and operation
For self-hosted n8n instances, you can install directly via the web interface:
- Open n8n in your browser
- Navigate to Settings β Community Nodes
- Click Install a community node
- Enter package name:
@thingsboard/n8n-nodes-thingsboard - Click Install
- Wait for installation to complete
- Refresh your browser
Note: This method requires owner/admin permissions.
The ThingsBoard node is verified and available on n8n Cloud.
After installation and restart:
- Open n8n in your browser (typically
http://localhost:5678) - Create a new workflow
- Click the + button to add a node
- Search for "ThingsBoard" in the node picker
- The ThingsBoard node should appear in the search results
If you don't see the node:
- Verify the npm installation completed without errors
- Ensure you restarted n8n after installation (for Method 2)
- Check n8n logs for any loading errors
Before using the ThingsBoard node, configure your connection credentials:
- In n8n, navigate to Credentials β New Credential
- Search for "ThingsBoard API"
- Fill in the required fields:
| Field | Description | Example |
|---|---|---|
| Base URL | ThingsBoard instance URL | https://demo.thingsboard.io or https://thingsboard.cloud |
| Authentication Type | Select API Key | |
| API Key | Your ThingsBoard API key | your-api-key-here |
To create an API key, go to your ThingsBoard instance β API Keys and generate a new key. See the API Key documentation for details.
| Field | Description | Example |
|---|---|---|
| Base URL | ThingsBoard instance URL | https://demo.thingsboard.io or https://thingsboard.cloud |
| Authentication Type | Select Username / Password | |
| Username | Your ThingsBoard account email | tenant@thingsboard.org |
| Password | Your ThingsBoard account password | tenant |
- Click Save to store the credentials
The credentials are encrypted and stored securely by n8n. You can reuse the same credentials across multiple ThingsBoard nodes in different workflows.
- β Create Device (Params/JSON mode)
- β Delete Device
- β Get Device by ID
- β Get Device by Name
- β Get Tenant Devices
- β Get Customer Devices
- β Get Devices by Entity Group (PE only)
- β Get User Devices (PE only)
- β Create Asset (Params/JSON mode)
- β Delete Asset
- β Get Asset by ID
- β Get Asset by Name
- β Get Tenant Assets
- β Get Customer Assets
- β Get Assets by Entity Group (PE only)
- β Get User Assets (PE only)
- β Create Customer (Params/JSON mode)
- β Delete Customer
- β Get Customer by ID
- β Get Customer by Title
- β Get Customers
- β Get Customers by Entity Group (PE only)
- β Get User Customers (PE only)
- β Create Dashboard (JSON mode)
- β Delete Dashboard
- β Get Dashboard by ID
- β Get Dashboards
- β Get Customer Dashboards
- β Get Attributes
- β Get Attribute Keys
- β Get Attribute Keys (by Scope)
- β Get Latest Timeseries
- β Get Timeseries (Time Range)
- β Get Timeseries Keys
- β Save Entity Attributes
- β Save Device Attributes
- β Save Entity Telemetry
- β Save Entity Telemetry with TTL
- β Delete Entity Attributes
- β Delete Device Attributes
- β Delete Entity Timeseries
- β Get All Alarms
- β Get Alarm by ID
- β Get Alarm Info by ID
- β Get Alarms by Originator
- β Get Highest Severity Alarm
- β Get Alarm Types
- β Get Relation
- β Find by From
- β Find by From with Relation Type
- β Find by To
- β Find by To with Relation Type
- β Find Info by From
- β Find Info by To
- β Get Entity Group by ID
- β Get Entity Groups by Type
- β Get Entity Groups by Owner and Type
- β Get Entity Group by Owner/Name/Type
- β Get Entity Groups for Entity
Total: 61 operations across 8 resources
# Clone the repository
git clone https://github.com/thingsboard/thingsboard-n8n-node.git
cd thingsboard-n8n-node
# Install dependencies
npm install
# Build the project
npm run build
# Run in development mode (watch)
npm run dev# Link the package
npm link
# In your n8n directory
npm link @thingsboard/n8n-nodes-thingsboard
# Start n8n
n8n startUse the ThingsBoard node as a tool for AI Agents to enable intelligent, natural language IoT automation.
- User sends a chat message: "What devices do I have and what's their status?"
- AI Agent (powered by Google Gemini or OpenAI GPT-4) has access to ThingsBoard tools
- Agent autonomously calls:
Get devices in ThingsBoardβ Retrieves device listGet timeseries in ThingsBoardβ Fetches latest telemetry
- Agent responds in natural language with the actual data
- "Show me the temperature of my living room sensor"
- "Which devices are offline right now?"
- "Update the threshold on device X to 30 degrees"
- "Send me an alert if any temperature exceeds 25Β°C"
The AI agent understands context and calls the appropriate ThingsBoard operations automatically!
Real-world scenario: Every night, export device telemetry to S3, but also enrich it with device metadata from your CRM, convert to Parquet format for Athena, and trigger a Lambda function to update your data warehouse. One workflow, multiple outputs.
Why use n8n instead of ThingsBoard's native export:
- Multi-destination - Send the same data to S3 + Snowflake + email report in one workflow
- Data transformation - Enrich telemetry with business context (customer names, locations from CRM)
- Custom formats - Convert to Parquet, Avro, or CSV with specific schemas for your analytics tools
- Conditional logic - Export only specific devices, filter by customer tier, or aggregate before storage
- Integration chains - After S3 upload β Trigger AWS Lambda β Update tracking database β Send Slack notification
For a complete step-by-step guide with detailed screenshots, see the full documentation.
The ThingsBoard n8n node is built on top of the ThingsBoard REST API. For detailed information about API endpoints, request/response formats, and additional parameters, refer to the ThingsBoard REST API documentation.
- npm Package: @thingsboard/n8n-nodes-thingsboard
- GitHub Repository: thingsboard/thingsboard-n8n-node
- n8n Documentation: docs.n8n.io
- n8n Community: community.n8n.io
- ThingsBoard REST API: REST API Reference
If you encounter issues or have questions about the ThingsBoard n8n node:
- GitHub Issues: Report bugs or request features
- ThingsBoard Community: Get help from the community
- n8n Community: n8n community
MIT License - see the LICENSE file for details.
n8n is a fair-code licensed workflow automation platform.



