Skip to main content

ThingsBoardLink

PyPI Downloads PyPI version Python Version License

A high-level IoT platform interaction toolkit designed for Python developers

IoT Cloud Platform • Developer-Friendly • Production-Ready

Chinese | Documentation | Examples


🚀 Why ThingsBoardLink?

ThingsBoardLink is a powerful Python package designed to simplify integration with the ThingsBoard IoT platform. It encapsulates ThingsBoard's REST API, providing object-oriented interfaces that allow developers to easily manage devices, process telemetry data, control alarms, and other core functions.

✨ Key Features

Feature Description Benefits Documentation Examples
🔐 Auth Management Auto JWT & session handling Enhanced security, stateless auth client_doc_en.md 01_connect_and_auth.py
📱 Device Management Full device CRUD & credential ops Easy lifecycle & access management device_service_doc_en.md 02_device_management.py
📊 Telemetry Data Upload, query & fetch history data Efficient time-series data handling telemetry_service_doc_en.md 03_telemetry_data.py
⚙️ Attribute Management Client, server & shared attribute ops Flexible metadata, dynamic config attribute_service_doc_en.md 04_attribute_management.py
🚨 Alarm Management Create, query, acknowledge & clear alarms Timely response, system reliability alarm_service_doc_en.md 05_alarm_management.py
🔄 RPC Calls One-way & two-way remote procedure calls Efficient device-cloud command interaction rpc_service_doc_en.md 06_rpc_calls.py
🔗 Relation Management Create & manage entity relations Build topology, complex logic relation_service_doc_en.md 07_entity_relations.py

🚀 Quick Start

Installation

# Install from PyPI
pip install thingsboardlink

# Or install with development dependencies
pip install thingsboardlink[dev]

30-Second Demo

from thingsboardlink import ThingsBoardClient

# Connect to the corresponding cloud platform
with ThingsBoardClient(
    base_url="http://localhost:8080",
    username="tenant@thingsboard.org",
    password="tenant"
) as client:
    # Device ID
    device_id = "MY_DEVICE_ID"
    
    # Retrieve telemetry data for the corresponding device
    value = client.telemetry_service.get_latest_telemetry(device_id)
    print(value)

📁 Project Architecture

ThingsBoardLink/
├── src/thingsboardlink/
│   ├── services/                   # 🛠️ Service module package
│   │   ├── device_service.py       # Device service module
│   │   ├── telemetry_service.py    # Telemetry service module
│   │   ├── attribute_service.py    # Attribute service module
│   │   ├── alarm_service.py        # Alarm service module
│   │   ├── rpc_service.py          # RPC service module
│   │   └── relation_service.py     # Relation service module
│   │
│   ├── client.py                   # 🖥️ Core client module
│   ├── exceptions.py               # 🔧 Exception handling module
│   └── models.py                   # 🚚 Data model module
│
├── examples/                       # 📚 Usage examples
│   ├── 01_connect_and_auth.py      # Connection and authentication example
│   ├── 02_device_management.py     # Device management example
│   ├── 03_telemetry_data.py        # Telemetry data example
│   ├── 04_attribute_management.py  # Attribute management example
│   ├── 05_alarm_management.py      # Alarm management example
│   ├── 06_rpc_calls.py             # RPC call example
│   └── 07_entity_relations.py      # Relation management example
│
└── docs/                           # 📜 Documentation
    ├── zh                          # Chinese - Documentation
    └── en                          # English - Documentation

Metadata

Release files for thingsboardlink 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for thingsboardlink 1.2.0
File Size Uploaded
thingsboardlink-1.2.0.tar.gz 28.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for thingsboardlink 1.2.0
File Interpreter ABI Platform
thingsboardlink-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 61.4 kB

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page