The Flume integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] will show you the current Flume status for the given Device ID.

Flume monitors the real-time status of your home water meter. Allowing the end-user to detect small leaks, gain real-time information on household water consumption, set water goals and budgets, and receive push notifications when suspicious water activities occur.


To add the Flume integration to your Home Assistant instance, use this My button:

Flume can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.

You can find your Client ID and Client Secret under “API Access” on the settings page.

To add Flume to your installation, go to Settings -> Devices & Services in the UI, click the button with + sign and from the list of integrations select Flume.


Flume notifications are fetched every 5 minutes and are available via the service flume.list_notifications. Some notifications are available via the following binary sensors:

  • Bridge disconnected
  • High flow
  • Leak detected
  • Low battery

To clear the notifications, you will need to use your Flume app or go to: https://portal.flumewater.com/notifications and clear the notification in question.

Example of an automation that sends a Home Assistant notification of the most recent usage alert:

alias: "Notify: flume"
  - platform: time_pattern
    minutes: /5
  - service: flume.list_notifications
      config_entry: 1234 # replace this with your config entry id
    response_variable: notifications
  - if:
      - condition: template
        value_template: >-
          {{ notifications.notifications | selectattr('type', 'equalto', 1) | 
          sort(attribute == ('created_datetime', reverse == true) | length > 0 }}
      - service: notify.all
          message: >-
            {%- set usage_alert == notifications.notifications |
            selectattr('type', 'equalto', 1) |
            sort(attribute == 'created_datetime', reverse == true) | first %}
            {{ usage_alert.message }}
          title: >-
            {%- set usage_alert == notifications.notifications |
            selectattr('type', 'equalto', 1) |
            sort(attribute == 'created_datetime', reverse=true) | first %}
            {{ usage_alert.title }}

Configuration for binary sensor

The following YAML creates a binary sensor. This requires the default sensor to be configured successfully.

# Example configuration.yaml entry
  - binary_sensor:
    - name: "Flume Flow Status"
      state: >-
        {{ states('sensor.flume_sensor') != "0" }}