---
title: "Retrieves energy consumed by HP in regular intervals."
method: GET
path: "/api/v4/systems/{system_id}/hp_telemetry"
tags: ["Device Level Monitoring"]
---

# Retrieves energy consumed by HP in regular intervals.

`GET /api/v4/systems/{system_id}/hp_telemetry`

## Request

- Base URL: `https://api-qa2.enphaseenergy.com`
- URL: `https://api-qa2.enphaseenergy.com/api/v4/systems/{system_id}/hp_telemetry`
- Auth: none declared
- TypeScript: <https://skmtc.dev/enphase/apis/monitoring-api/docs/api/v4/systems/:system_id/hp_telemetry/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves energy consumed by HP in regular intervals. If no start_at is specified, defaults to midnight today, in the timezone of the system. If you request a start date earlier than when the system first reported data, we use midnight of the first reported date instead. The first reported date is the later of the system’s First Interval End Date or Interconnection Date. The end_at is calculated as the minimum of the time of the request and (start time + granularity). The meaning of granularity is as follow: If granularity is 15mins, maximum 1 intervals will appear in response. If granularity is day, maximum 96 intervals will appear in response where each interval is of 15 mins duration. The requested start date must be within 2 years from current date.

## Path parameters

- `system_id` integer, required

## Query parameters

- `start_at` integer
- `start_date` string
- `granularity` string
- `interval_duration` string

## Response `200`

HP telemetry in intervals

- object
  - `system_id` integer: The unique numeric ID of the system
  - `granularity` string: The granularity of the telemetry data. Possible values are 'week', 'day', '15mins', '5mins'. Default is 'day'
  - `interval_duration` string: Size of the interval. Can be 5mins, or 15mins. Site must be configured to 5 min telemetry for this to be supported
  - `start_at` string: Start Time of the data series. Either Start_date or start_at will be present. By default start_at will appear in response. If start_date parameter is passed in the url, then start_date field will appear in response.
  - `end_at` string: End Time of the data series. Either end_date or end_at will be present. By default end_at will appear in response. If end_date parameter is passed in the url, then end_date field will appear in response.
  - `items` string: The list key 'intervals'
  - `intervals` array[]: Energy units consumed per day (positive will correspond to energy consumption, negative will correspond to zero consumption). The time series includes one entry for each day from the start_date to the end_date with no gaps in the time series. If the response contains trailing zeroes, such as [909, 4970, 0, 0, 0], then there is no consumption by the HP
    - object[]
      - `end_at` integer: End time of the telemetry interval
      - `wh_consumed` integer: Units consumed per interval. This value can only be zero or positive

## Other responses

- `401`: Authentication Error
- `403`: Forbidden
- `404`: Not Found
- `405`: Method Not Allowed
- `422`: Unprocessable Entity
- `429`: Too Many Requests
- `501`: Not Implemented

## Changes

- **2026-11-06** `a783ff728669`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/enphase/apis/monitoring-api/changes/api/v4/systems/:system_id/hp_telemetry/get.md)

---

[API](https://skmtc.dev/enphase/apis/monitoring-api.md) - [All operations](https://skmtc.dev/enphase/apis/monitoring-api/llms.txt) - [OpenAPI document](https://skmtc.dev/enphase/apis/monitoring-api/revisions/a783ff728669?raw)
