Battery Estimate Savings API Documentation
Overview
This endpoint calculates estimated annual savings for battery storage systems. It supports both standard rate plan optimization and wholesale market participation (LEAP programs in CAISO or NYISO).Authentication
Requires API Key authentication viaApiKeyGuard.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id | string | Yes | Home ID (UUID) |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
days | number | Yes | Number of days to simulate per month |
solarCapacity | number | null | No | Solar panel capacity in kW. Set to null if no solar |
maxCapacityKiloWattHours | number | Yes | Maximum battery capacity in kWh |
chargingPowerKiloWatts | number | Yes | Maximum charging power in kW |
dischargingPowerKiloWatts | number | Yes | Maximum discharging power in kW |
chargingEfficiency | number | Yes | Charging efficiency (0-1). Typical value: 0.95 |
dischargingEfficiency | number | Yes | Discharging efficiency (0-1). Typical value: 0.95 |
currentSOC | number | Yes | Current state of charge (0-1). Typical value: 0.5 |
minPreferredSOC | number | Yes | Minimum preferred state of charge (0-1) |
maxPreferredSOC | number | Yes | Maximum preferred state of charge (0-1) |
months | number[] | null | No | Array of month indices (0-11) to include. If null, all 12 months are included |
Request Examples
Standard Rate Plan Example
Response
The response structure depends on whetherleap is set:
Standard Rate Plan Response (leap = null)
| Field | Type | Description |
|---|---|---|
optimizedCost | number | Annual optimized cost ($) |
baselineCost | number | Annual baseline cost ($) |
dollarsSaved | number | Annual dollars saved ($) |
percentageSaved | number | Percentage saved (0-1) |
carbonSaved | number | Carbon emissions saved (kg CO2) |
carbonReduction | number | Carbon reduction percentage (0-1) |
capacityRevenue | undefined | Always undefined for standard rate plans |
lmpRevenue | undefined | Always undefined for standard rate plans |
totalRevenue | undefined | Always undefined for standard rate plans |
months | array | Array of monthly results. Each month contains: |
months[].month | number | Month index (0-11) |
months[].monthStr | string | Month name (e.g., “January”) |
months[].totalCost | number | Monthly optimized cost |
months[].baselineCost | number | Monthly baseline cost |
months[].savings | number | Monthly savings |
months[].stats.dollarsSaved | number | Monthly dollars saved |
months[].stats.percentageSaved | number | Monthly percentage saved |
months[].stats.carbonSaved | number | Monthly carbon saved |
months[].stats.carbonReduction | number | Monthly carbon reduction |
months[].days | array | Array of daily results within the month |
months[].days[].time.month | number | Month index |
months[].days[].time.monthStr | string | Month name |
months[].days[].time.day | number | Day of month |
months[].days[].time.dayOfWeekStr | string | Day of week name |
months[].days[].totalCost | number | Daily optimized cost |
months[].days[].baselineCost | number | Daily baseline cost |
months[].days[].optimizedCarbon | number | Daily optimized carbon emissions |
months[].days[].baselineCarbon | number | Daily baseline carbon emissions |
months[].days[].stats.dollarsSaved | number | Daily dollars saved |
months[].days[].stats.percentageSaved | number | Daily percentage saved |
Response Examples
Standard Rate Plan Response Example
Error Responses
400 Bad Request
Missing required home data404 Not Found
Home not foundNotes
- The home must have a
zipcodeandratePlanIdconfigured - Battery capacity and power ratings should match the physical system specifications
- Efficiency values typically range from 0.90 to 0.98 for modern lithium-ion batteries
- State of charge values are normalized (0 = empty, 1 = full)
- Results are annualized based on the number of days simulated per month
