> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ariscomfort.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get DHW tank status

> Returns current domestic hot water tank status including temperatures, state of charge, and effective capacity.



## OpenAPI

````yaml get /api/dhw
openapi: 3.1.0
info:
  title: Aris API
  version: 1.0.0
  description: >
    REST API for controlling Aris home comfort systems.


    Aris is an air-to-water heat pump system that heats, cools, and provides hot
    water for homes.

    The Aris Brain is the central controller, managing zones, fan-coil units
    (FCUs), heat pumps,

    domestic hot water (DHW), and thermal energy storage (TES).


    ## Base URL


    The Aris Brain runs on your local network. Find your Brain's address via:

    - mDNS: `http://aris.local` (if your network supports mDNS)

    - Router admin panel: Look for a device named "aris-brain"


    ## Authentication


    Most API endpoints require authentication via Bearer token. Create an API
    token in the Aris web UI under **Settings → API Tokens**.


    Include the token in the `Authorization` header:

    ```

    Authorization: Bearer your-api-token

    ```


    ## Real-time Updates


    For real-time updates, connect to the WebSocket at
    `ws://aris.local?token=YOUR_API_TOKEN`.

    The WebSocket broadcasts zone state changes, system events, and device
    telemetry.
servers:
  - url: http://aris.local
    description: Local network (mDNS)
  - url: http://{brainIp}
    description: Local network (IP address)
    variables:
      brainIp:
        default: 192.168.1.100
        description: Your Aris Brain's IP address
security: []
tags:
  - name: Health
    description: Health check and readiness endpoints
  - name: System
    description: System-wide state and mode control
  - name: Zones
    description: Zone management, setpoints, and temperature control
  - name: DHW
    description: Domestic Hot Water tank status and history
  - name: TES
    description: Thermal Energy Storage tank status
  - name: HCU
    description: Hydronic Control Unit status
  - name: Heat Pumps
    description: Heat pump telemetry and diagnostics
  - name: FCUs
    description: Fan Coil Unit telemetry and status
  - name: Weather
    description: Weather data and forecasts
  - name: Events
    description: System event log and audit trail
  - name: Metrics
    description: VictoriaMetrics time-series data proxy
  - name: Prometheus
    description: Prometheus-compatible API for Grafana
  - name: Tokens
    description: API token management
  - name: Config
    description: System configuration (read-only)
  - name: Firmware
    description: FCU firmware OTA updates
paths:
  /api/dhw:
    get:
      tags:
        - DHW
      summary: Get DHW tank status
      description: >-
        Returns current domestic hot water tank status including temperatures,
        state of charge, and effective capacity.
      operationId: getDHWStatus
      responses:
        '200':
          description: DHW tank status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DHWStatus'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '503':
          description: DHW service not available
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearerAuth: []
components:
  schemas:
    DHWStatus:
      type: object
      description: >
        Domestic hot water tank status. The DHW tank stores potable hot water
        and acts as part

        of the Aris thermal-storage strategy. A mixing valve ensures delivered
        water temperature

        remains stable and scald-safe, independent of internal tank temperature.
      required:
        - dhwId
        - tempTopC
        - tempBottomC
        - heatingActive
        - recircEnabled
      properties:
        dhwId:
          type: string
          description: Unique identifier for the DHW tank
          example: dhw_main
        tempTopC:
          type: number
          description: >
            Temperature at the top of the tank (Celsius). Primary indicator of
            available

            hot water since hot water is drawn from the top.
          example: 51.2
        tempBottomC:
          type: number
          description: >
            Temperature at the bottom of the tank (Celsius). Indicates remaining
            cold mass

            and total usable energy. Cold water enters at the bottom during
            draws.
          example: 45.1
        tempMidC:
          type: number
          description: >
            Mid-layer temperature (Celsius). Improves stratification accuracy
            for state of

            charge calculations. Only present if the tank has a mid-layer sensor
            installed.
          example: 48.7
        stateOfChargePercent:
          type: integer
          minimum: 0
          maximum: 100
          description: >
            Calculated energy level (0-100%) based on stratification vs target
            temperatures.

            Computed by the Brain from temperature readings. Only present when
            Brain has

            sufficient data to calculate.
          example: 75
        effectiveCapacityLiters:
          type: number
          description: >
            Usable hot water capacity (liters) accounting for mixing valve boost
            effect.

            Because the mixing valve blends tank water with cold supply, the
            effective

            capacity can exceed the physical tank volume. Computed by the Brain.
          example: 242
        heatingActive:
          type: boolean
          description: True when the tank is currently being charged by the HCU
          example: false
        isSanitizing:
          type: boolean
          description: >
            True during active Legionella sanitization cycle. The tank is heated
            to an

            elevated temperature (~65C) to kill bacteria. Normal operation
            resumes after

            the cycle completes.
          example: false
        dhwDeliveryTempC:
          type: number
          description: >
            Temperature of mixed hot water delivered to fixtures (Celsius),
            measured after

            the mixing valve. Primary indicator of user experience and scald
            protection.

            Only present if delivery temperature sensor is installed.
          example: 48.5
        dhwColdSupplyTempC:
          type: number
          description: >
            Temperature of incoming cold water supply (Celsius). Used for energy
            calculations

            and freeze protection alerts. Only present if cold supply sensor is
            installed.
          example: 12.3
        backupHeaterActive:
          type: boolean
          description: >
            Whether the electric backup heater (if present) is currently
            energized. Used for

            resiliency and extreme-condition recovery when heat pump cannot meet
            demand.
          example: false
        recircEnabled:
          type: boolean
          description: True if the home has a DHW recirculation loop installed
          example: true
        recircPumpActive:
          type: boolean
          description: |
            True if the recirculation pump is currently running. Only present if
            recirculation is enabled.
          example: false
        lastSanitizationTs:
          type: string
          format: date-time
          description: >
            ISO 8601 timestamp (UTC) of the last completed Legionella
            sanitization cycle.

            Used for maintenance scheduling and compliance reporting.
          example: '2024-01-15T03:00:00Z'
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error type
        message:
          type: string
          description: Human-readable error message
        hint:
          type: string
          description: Suggestion for resolving the error
  responses:
    Unauthorized:
      description: Missing or invalid authentication
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: string
                example: Unauthorized
              message:
                type: string
                example: Valid authentication required
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Session token or API token

````