---
title: ''
description: Telegraf plugin for collecting metrics from HueBridge
url: https://docs.influxdata.com/telegraf/v1/input-plugins/huebridge/
estimated_tokens: 1698
product: Telegraf Enterprise
version: v1
publisher: InfluxData
canonical: https://docs.influxdata.com/telegraf/v1/input-plugins/huebridge/
date: '2026-06-08T21:54:11+02:00'
lastmod: '2026-06-08T21:54:11+02:00'
---

==========

* Telegraf v1.34.0+

[Plugin source](https://github.com/influxdata/telegraf/tree/v1.39.1/plugins/inputs/huebridge/)[Download configuration](https://raw.githubusercontent.com/influxdata/telegraf/refs/tags/v1.39.1/plugins/inputs/huebridge/sample.conf)

# HueBridge Input Plugin

This plugin gathers status from [Hue Bridge](https://www.philips-hue.com/) devices using the[CLIP API](https://developers.meethue.com/develop/hue-api-v2/) interface of the devices.

**Introduced in:** Telegraf v1.34.0**Tags:** iot**OS support:** all

## Global configuration options

Plugins support additional global and plugin configuration settings for tasks
such as modifying metrics, tags, and fields, creating aliases, and configuring
plugin ordering. See [CONFIGURATION.md](/telegraf/v1/configuration/#plugins) for more details.

## Configuration

```
# Gather smart home status from Hue Bridge
[[inputs.huebridge]]
  ## URL of bridges to query in the form <scheme>://<bridge id>:<user name>@<address>/
  ## See documentation for available schemes.
  bridges = [ "address://<bridge id>:<user name>@<bridge hostname or address>/" ]

  ## Manual device to room assignments to apply during status evaluation.
  ## E.g. for motion sensors which are reported without a room assignment.
  # room_assignments = { "Motion sensor 1" = "Living room", "Motion sensor 2" = "Corridor" }

  ## Timeout for gathering information
  # timeout = "10s"

  ## Optional TLS Config
  # tls_ca = "/etc/telegraf/ca.pem"
  # tls_cert = "/etc/telegraf/cert.pem"
  # tls_key = "/etc/telegraf/key.pem"
  # tls_key_pwd = "secret"
  ## Use TLS but skip chain & host verification
  # insecure_skip_verify = false
```

### Extended bridge access options

The Hue bridges to query can be defined by URLs of the following form:

```
  <locator scheme>://<bridge id>:<user name>@<locator dependent address>/
```

where the `bridge id` is the unique bridge id as returned in

```bash
curl -k https://<address>/api/config/0
```

and the `user name` is the secret user name returned during application
authentication.

To create a new user name issue the following command
after pressing the bridge’s link button:

```
  curl -k -X POST http://<bridge address>/api \
    -H 'Content-Type: application/json' \
    -d '{"devicetype":"huebridge-telegraf-plugin"}'
```

The `scheme` can have one of the following values and will also determine the
structure of the `address` part.

#### `address` scheme

Addresses a local bridge with `address` being the DNS name or IP address of the
bridge, e.g.

```text
address://0123456789ABCDEF:sFlEGnMAFXO6RtZV17aViNUB95G2uXWw64texDzD@mybridge/
```

#### `cloud` scheme

With this scheme the plugin discovers a bridge via its cloud registration.
The `address` part defines the discovery endpoint to use.
If not specified otherwise,
the [standard discovery endpoint](https://discovery.meethue.com/) is used, e.g.

```text
cloud://0123456789ABCDEF:sFlEGnMAFXO6RtZV17aViNUB95G2uXWw64texDzD@/
```

#### `mdns` scheme

This scheme uses mDNS to discover the bridge. Leave the `address` part unset
for this scheme like

```text
mdns://0123456789ABCDEF:sFlEGnMAFXO6RtZV17aViNUB95G2uXWw64texDzD@/
```

#### `remote` scheme

This scheme accesses the bridge via the Cloud Remote API. The `address` part
defines the cloud API endpoint defaulting to the[standard API endpoint](https://api.meethue.com).

```text
remote://0123456789ABCDEF:sFlEGnMAFXO6RtZV17aViNUB95G2uXWw64texDzD@/
```

In order to use this method a Hue Developer Account is required, a Remote App
must be registered and the corresponding Authorization flow must be completed.
See the [Cloud2Cloud Getting Started documentation](https://developers.meethue.com/develop/hue-api-v2/cloud2cloud-getting-started/)for full details.

Additionally, the `remote_client_id`, `remote_client_secret`, and`remote_callback_url` parameters must be set in the plugin configuration
exactly as used during the App registration.

Furthermore the `remote_token_dir` parameter must point to the directory
containing the persisted token.

## Metrics

* `huebridge_light`
  * tags
    * `bridge_id` - The bridge id (this metrics has been queried from)
    * `room` - The name of the room
    * `device` - The name of the device

  * fields
    * `on` (int) - 0: light is off 1: light is on
    * `brightness` (float) - Brightness percentage (0-100)
    * `color_temp` (int) - Color temperature in mireds
    * `color_x` (float) - CIE xy color point X coordinate
    * `color_y` (float) - CIE xy color point Y coordinate

* `huebridge_temperature`
  * tags
    * `bridge_id` - The bridge id (this metrics has been queried from)
    * `room` - The name of the room
    * `device` - The name of the device
    * `enabled` - The current status of sensor (active: true|false)

  * fields
    * `temperature` (float) - The current temperatue (in °Celsius)

* `huebridge_light_level`
  * tags
    * `bridge_id` - The bridge id (this metrics has been queried from)
    * `room` - The name of the room
    * `device` - The name of the device
    * `enabled` - The current status of sensor (active: true|false)

  * fields
    * `light_level` (int) - The current light level (in human friendly scale 10.000\*log10(lux)+1)
    * `light_level_lux` (float) - The current light level (in lux)

* `huebridge_motion_sensor`
  * tags
    * `bridge_id` - The bridge id (this metrics has been queried from)
    * `room` - The name of the room
    * `device` - The name of the device
    * `enabled` - The current status of sensor (active: true|false)

  * fields
    * `motion` (int) - 0: no motion detected 1: motion detected

* `huebridge_device_power`
  * tags
    * `bridge_id` - The bridge id (this metrics has been queried from)
    * `room` - The name of the room
    * `device` - The name of the device

  * fields
    * `battery_level` (int) - Power source status (normal, low, critical)
    * `battery_state` (string) - Battery charge level (in %)

## Example Output

```text
huebridge_light,huebridge_bridge_id=0123456789ABCDEF,huebridge_room=Name#15,huebridge_device=Name#3 on=0 1734880329
huebridge_temperature,huebridge_room=Name#15,huebridge_device=Name#7,huebridge_device_enabled=true,huebridge_bridge_id=0123456789ABCDEF temperature=17.63 1734880329
huebridge_light_level,huebridge_bridge_id=0123456789ABCDEF,huebridge_room=Name#15,huebridge_device=Name#7,huebridge_device_enabled=true light_level=18948,light_level_lux=78.46934003526889 1734880329
huebridge_motion_sensor,huebridge_bridge_id=0123456789ABCDEF,huebridge_room=Name#15,huebridge_device=Name#7,huebridge_device_enabled=true motion=0 1734880329
huebridge_device_power,huebridge_bridge_id=0123456789ABCDEF,huebridge_room=Name#15,huebridge_device=Name#7 battery_level=100,battery_state=normal 1734880329
```
