---
title: "Get Firmware OTA Package (Full or Delta)"
method: POST
path: "/api/v4/ota/ev_charger/firmware/download_url"
tags: ["EVSE Configuration"]
---

# Get Firmware OTA Package (Full or Delta)

`POST /api/v4/ota/ev_charger/firmware/download_url`

## Request

- Base URL: `https://api-qa2.enphaseenergy.com`
- URL: `https://api-qa2.enphaseenergy.com/api/v4/ota/ev_charger/firmware/download_url`
- Auth: none declared
- TypeScript: <https://skmtc.dev/enphase/apis/commissioning-api/docs/api/v4/ota/ev_charger/firmware/download_url/post.ts> (a function with typed inputs; its response is checked against the schema)

Provides a secure download URL for full or delta firmware packages. OTA service automatically falls back to full image if delta is unavailable.

## Query parameters

- `key` string, required

## Request body

- object
  - `currentVersion` string, required: Current firmware version of the charger
  - `targetVersion` string, required: Target firmware version to upgrade to
  - `isDelta` boolean, required: Whether to request a delta package. If true and delta exists, returns delta. Otherwise falls back to full package.

## Response `200`

OK

- object
  - `targetVersion` string: Target firmware version
  - `packageType` 'delta' | 'full': Type of package returned: delta or full
  - `validUntil` string: Expiry timestamp for the download URL (ISO 8601 format)
  - `downloadUrl` string: Pre-signed URL to download the firmware package

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `429`: Too Many Requests

---

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