---
title: "energy_lifetime"
method: GET
path: "/api/v4/systems/{system_id}/energy_lifetime"
tags: ["Site Level Production Monitoring"]
---

# energy_lifetime

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

## Request

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

Returns a daily time series of energy produced by the system over its lifetime. All measurements are in Watt hours.
 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 includes trailing zeroes, such as [909, 4970, 0, 0, 0], then no energy has been reported for the last days in the series.
 If the system has a meter, the time series includes data as measured by the microinverters until the first full day after the meter has been installed. Later, it switches to using the data as measured by the meter. This is called the “merged time series.”  The attribute “meter_start_date” indicates the time when the meter measurements begin to be used. You can retrieve the complete time series from the meter and from the microinverters by adding the parameter production=all to the request.

## Path parameters

- `system_id` integer, required

## Query parameters

- `start_date` string
- `end_date` string
- `production` string

## Response `200`

When the query parameters include “production=all”, returns meter and microinverter-measured time series:

- object
  - `system_id` integer: System id
  - `start_date` string: When no start_date parameter is specified on the request, this is the operational_date of the system. May be null if system has never produced. When a start_date parameter is included in the request, it is included here in the response.
  - `meter_start_date` integer: The first day in the time series when measurements are taken from a meter instead of from microinverters. This field is not present unless the system has a meter.
  - `production` integer[]: An array of production measurements, one for each day since the system started producing, or one for each day of the requested period. If the system has never produced energy, the array may be empty.
  - `meta` object: Information about the system such as its status, when it became operational and last reported to Envoy.
    - `status` string: System's status. Corresponding Enlighten values can be found in table added at the end of page.
    - `last_report_at` integer: Timestamp (in epoch format) at which the system's Envoy last submitted a report
    - `last_energy_at` integer: Timestamp (in epoch format) at which the systems's produced energy was last reported. Even if the last produced energy is 0, its timestamp will be returned.
    - `operational_at` integer: Timestamp (in epoch format) at which this system became operational. Corresponds to the system’s interconnect time, if one is specified. Otherwise, it is the system’s first reported interval end time.

## Other responses

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

---

[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)
