### Get Real-Time Power Snapshot (Bash) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Example cURL command to fetch the most recent power readings for a specific ESS unit. Ensure APP_ID, TIMESTAMP, and SIGN are correctly set. ```bash curl -X GET "https://openapi.alphaess.com/api/getLastPowerData?sysSn=ALB011020015002" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" # Response: {"code":200,"data":{"pbat":500,"pev":0,"pgrid":-450,"pload":1200,"ppv":3200,"soc":78}} ``` -------------------------------- ### AlphaESSAPI Python Client Setup Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Initializes the AlphaESSAPI client with base URL, application credentials, and sets up methods for making authenticated GET and POST requests to the AlphaCloud API. The client automatically handles signature generation. ```python import time import aiohttp import hashlib import logging import asyncio from typing import Optional logger = logging.getLogger(__name__) class AlphaESSAPI: def __init__(self) -> None: self.BASEURL = "https://openapi.alphaess.com/api" self.APPID = "alphaYOURAPPID" # from developer portal self.APPSECRET = "yourAppSecret" # from developer portal self.sys_sn_list = None def __get_signature(self, timestamp: str) -> str: raw = (self.APPID + self.APPSECRET + timestamp).encode("ascii") return hashlib.sha512(raw).hexdigest() async def __get_request(self, path: str, params: dict) -> Optional[dict]: timestamp = str(int(time.time())) url = f"{self.BASEURL}/{path}" headers = { "appId": self.APPID, "timeStamp": timestamp, "sign": self.__get_signature(timestamp), } async with aiohttp.ClientSession() as session: async with session.get(url, headers=headers, params=params) as resp: data = await resp.json() if resp.status == 200: return data logger.error(f"GET error {resp.status}: {data}") return None async def __post_request(self, path: str, params: dict) -> Optional[dict]: timestamp = str(int(time.time())) url = f"{self.BASEURL}/{path}" headers = { "appId": self.APPID, "timeStamp": timestamp, "sign": self.__get_signature(timestamp), } async with aiohttp.ClientSession() as session: async with session.post(url, headers=headers, json=params) as resp: data = await resp.json() if resp.status == 200: return data logger.error(f"POST error {resp.status}: {data}") return None ``` -------------------------------- ### Get Historical Energy Summary for One Day (Bash) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Example cURL command to fetch aggregated daily energy data for a specific ESS. Requires sysSn and queryDate in 'YYYY-MM-DD' format. ```bash curl -X GET "https://openapi.alphaess.com/api/getOneDateEnergyBySn?sysSn=ALB011020015002&queryDate=2023-02-14" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` -------------------------------- ### Get Historical Power Data for One Day (Bash) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Example cURL command to fetch historical power data for a specific ESS on a given date. Requires sysSn and queryDate in 'YYYY-MM-DD' format. ```bash curl -X GET "https://openapi.alphaess.com/api/getOneDayPowerBySn?sysSn=ALB011020015002&queryDate=2023-03-06" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` -------------------------------- ### Read Charging Schedule Settings (Bash) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Example cURL command to fetch the current grid-charging schedule and upper battery capacity limit for a specific ESS. Requires sysSn. ```bash curl -X GET "https://openapi.alphaess.com/api/getChargeConfigInfo?sysSn=ALB011020015002" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` -------------------------------- ### GET /api/getChargeConfigInfo — Read Charging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves the current grid-charging schedule and upper battery capacity limit for a given ESS. ```APIDOC ## GET /api/getChargeConfigInfo — Read Charging Schedule Settings ### Description Retrieves the current grid-charging schedule and upper battery capacity limit for a given ESS. Response fields: `batHighCap` (max charge %, integer), `gridCharge` (1=enabled, 0=disabled), `timeChae1`/`timeChae2` (charge end times), `timeChaf1`/`timeChaf2` (charge start times). ### Method GET ### Endpoint /api/getChargeConfigInfo ### Parameters #### Query Parameters - **sysSn** (string) - Required - The system serial number of the ESS unit. ### Response #### Success Response (200) - **batHighCap** (integer) - Maximum battery charge capacity in %. - **gridCharge** (integer) - Grid charging status (1 for enabled, 0 for disabled). - **timeChae1** (string) - First charge end time (HH:MM). - **timeChae2** (string) - Second charge end time (HH:MM). - **timeChaf1** (string) - First charge start time (HH:MM). - **timeChaf2** (string) - Second charge start time (HH:MM). ### Request Example ```bash curl -X GET "https://openapi.alphaess.com/api/getChargeConfigInfo?sysSn=ALB011020015002" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` ### Response Example ```json { "batHighCap": 95, "gridCharge": 1, "timeChae1": "06:00", "timeChae2": "00:00", "timeChaf1": "22:00", "timeChaf2": "00:00" } ``` ``` -------------------------------- ### Get Real-Time Power Snapshot (Python) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves the most recent power readings for a specific ESS unit. Requires the ESS system serial number (sysSn). ```python async def get_last_power_data(self, sn: str) -> Optional[dict]: r = await self.__get_request("getLastPowerData", {"sysSn": sn}) if r and r["code"] == 200: return r["data"] logger.error(f"getLastPowerData error: {r['code']} {r['msg']}") return None ``` ```python # Usage async def main(): api = AlphaESSAPI() await api.get_ess_list() sn = api.sys_sn_list[0] # e.g. "ALB011020015002" power = await api.get_last_power_data(sn) print(f"SOC: {power['soc']}% PV: {power['ppv']}W Grid: {power['pgrid']}W") # Example output: # SOC: 78% PV: 3200W Grid: -450W asyncio.run(main()) ``` -------------------------------- ### Get Historical Energy Summary for One Day (Python) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves aggregated daily energy data (kWh totals) for a specific ESS. Useful for daily energy production/consumption reports. Requires sysSn and queryDate in 'YYYY-MM-DD' format. ```python async def get_one_date_energy_by_sn(self, sn: str, date: str) -> Optional[list]: r = await self.__get_request("getOneDateEnergyBySn", {"sysSn": sn, "queryDate": date}) if r and r["code"] == 200: return r["data"] logger.error(f"getOneDateEnergyBySn error: {r['code']} {r['msg']}") return None ``` ```python # Usage async def main(): api = AlphaESSAPI() energy = await api.get_one_date_energy_by_sn("ALB011020015002", "2023-02-14") print(energy) # Example output: # {"eCharge":5.2,"eDischarge":4.8,"eGridCharge":0.5,"eInput":12.3,"eOutput":3.1,"epv":11.8} asyncio.run(main()) ``` -------------------------------- ### Get Historical Power Data for One Day (Python) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves a time-series list of power readings for a specific ESS on a given date. The queryDate must be in 'YYYY-MM-DD' format. Response includes timestamp and power data for each interval. ```python async def get_one_date_power_by_sn(self, sn: str, date: str) -> Optional[list]: r = await self.__get_request("getOneDayPowerBySn", {"sysSn": sn, "queryDate": date}) if r and r["code"] == 200: return r["data"] logger.error(f"getOneDayPowerBySn error: {r['code']} {r['msg']}") return None ``` ```python # Usage async def main(): api = AlphaESSAPI() records = await api.get_one_date_power_by_sn("ALB011020015002", "2023-03-06") for entry in records[:3]: print(entry) # Example output: # {"uploadTime":"2023-03-06 00:05:00","ppv":0,"pbat":-200,"pgrid":150,"pload":50,"soc":62} asyncio.run(main()) ``` -------------------------------- ### Get Registered ESS Units (curl) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Fetches a list of registered ESS units using curl. Requires setting `APP_ID` and `APP_SECRET` environment variables. The signature is generated using `sha512sum` and appended to the request headers. ```bash # curl TIMESTAMP=$(date +%s) SIGN=$(echo -n "${APP_ID}${APP_SECRET}${TIMESTAMP}" | sha512sum | awk '{print $1}') curl -X GET "https://openapi.alphaess.com/api/getEssList" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" # Response: {"code":200,"data":[{"sysSn":"ALB011020015002","usCapacity":10.0,...}]} ``` -------------------------------- ### GET /api/getOneDateEnergyBySn — Historical Energy Summary for One Day Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves aggregated energy data (kWh totals) for a specific ESS on a given date, useful for daily energy reports. ```APIDOC ## GET /api/getOneDateEnergyBySn — Historical Energy Summary for One Day ### Description Returns aggregated energy data (kWh totals) for a specific ESS on a given date. Useful for daily energy production/consumption reports. ### Method GET ### Endpoint /api/getOneDateEnergyBySn ### Parameters #### Query Parameters - **sysSn** (string) - Required - The system serial number of the ESS unit. - **queryDate** (string) - Required - The date for which to retrieve energy data (format: YYYY-MM-DD). ### Response #### Success Response (200) - **eCharge** (float) - Total energy charged in kWh. - **eDischarge** (float) - Total energy discharged in kWh. - **eGridCharge** (float) - Total energy charged from the grid in kWh. - **eInput** (float) - Total energy input in kWh. - **eOutput** (float) - Total energy output in kWh. - **epv** (float) - Total energy generated by PV in kWh. ### Request Example ```bash curl -X GET "https://openapi.alphaess.com/api/getOneDateEnergyBySn?sysSn=ALB011020015002&queryDate=2023-02-14" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` ### Response Example ```json { "eCharge": 5.2, "eDischarge": 4.8, "eGridCharge": 0.5, "eInput": 12.3, "eOutput": 3.1, "epv": 11.8 } ``` ``` -------------------------------- ### GET /api/getOneDayPowerBySn — Historical Power Data for One Day Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves a time-series list of power readings for a specific ESS on a given date. Each entry includes power readings and a timestamp. ```APIDOC ## GET /api/getOneDayPowerBySn — Historical Power Data for One Day ### Description Returns a time-series list of power readings for a specific ESS on a given date. The `queryDate` parameter must be formatted as `YYYY-MM-DD`. Each entry in the response list contains the same fields as `getLastPowerData` plus a timestamp. ### Method GET ### Endpoint /api/getOneDayPowerBySn ### Parameters #### Query Parameters - **sysSn** (string) - Required - The system serial number of the ESS unit. - **queryDate** (string) - Required - The date for which to retrieve power data (format: YYYY-MM-DD). ### Response #### Success Response (200) - **uploadTime** (string) - Timestamp of the reading. - **ppv** (integer) - PV solar power in Watts. - **pbat** (integer) - Battery power in Watts. - **pgrid** (integer) - Grid power in Watts. - **pload** (integer) - Load power in Watts. - **soc** (integer) - Battery state of charge in %. ### Request Example ```bash curl -X GET "https://openapi.alphaess.com/api/getOneDayPowerBySn?sysSn=ALB011020015002&queryDate=2023-03-06" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` ### Response Example ```json [ { "uploadTime": "2023-03-06 00:05:00", "ppv": 0, "pbat": -200, "pgrid": 150, "pload": 50, "soc": 62 } ] ``` ``` -------------------------------- ### Get Registered ESS Units (Python) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves a list of all ESS units bound to the developer's appId. The `sysSn` is extracted and stored in `self.sys_sn_list` as a side effect. Handles cases where the response is a single item or a list of items. ```python # Python async def get_ess_list(self) -> Optional[list]: r = await self.__get_request("getEssList", {}) if r and r["code"] == 200: data = r["data"] if isinstance(data, list): self.sys_sn_list = [item["sysSn"] for item in data] return data else: self.sys_sn_list = [data["sysSn"]] return [data] logger.error(f"getEssList error: {r['code']} {r['msg']}") return None # Usage async def main(): api = AlphaESSAPI() systems = await api.get_ess_list() for s in systems: print(s["sysSn"], s["usCapacity"], s["emsStatus"]) # Example output: # ALB011020015002 10.0 1 asyncio.run(main()) ``` -------------------------------- ### GET /api/getLastPowerData — Real-Time Power Snapshot Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves the most recent power readings for a specific ESS unit. Includes battery power, EV charger power, grid power, load power, PV solar power, and battery state of charge. ```APIDOC ## GET /api/getLastPowerData — Real-Time Power Snapshot ### Description Returns the most recent power readings for a specific ESS unit identified by `sysSn`. Response fields: `pbat` (battery power, W), `pev` (EV charger power, W), `pgrid` (grid power, W), `pload` (load power, W), `ppv` (PV solar power, W), `soc` (battery state of charge, %). ### Method GET ### Endpoint /api/getLastPowerData ### Parameters #### Query Parameters - **sysSn** (string) - Required - The system serial number of the ESS unit. ### Response #### Success Response (200) - **pbat** (integer) - Battery power in Watts. - **pev** (integer) - EV charger power in Watts. - **pgrid** (integer) - Grid power in Watts. - **pload** (integer) - Load power in Watts. - **ppv** (integer) - PV solar power in Watts. - **soc** (integer) - Battery state of charge in %. ### Request Example ```bash curl -X GET "https://openapi.alphaess.com/api/getLastPowerData?sysSn=ALB011020015002" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` ### Response Example ```json { "code": 200, "data": { "pbat": 500, "pev": 0, "pgrid": -450, "pload": 1200, "ppv": 3200, "soc": 78 } } ``` ``` -------------------------------- ### Read Charging Schedule Settings (Python) Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves the current grid-charging schedule and upper battery capacity limit for a given ESS. Requires the ESS system serial number (sysSn). ```python async def get_in_charge_config_info(self, sn: str) -> Optional[dict]: r = await self.__get_request("getInChargeConfigInfo", {"sysSn": sn}) if r and r["code"] == 200: return r["data"] logger.error(f"getInChargeConfigInfo error: {r['code']} {r['msg']}") return None ``` ```python # Usage async def main(): api = AlphaESSAPI() config = await api.get_in_charge_config_info("ALB011020015002") print(config) # Example output: # {"batHighCap":95,"gridCharge":1,"timeChae1":"06:00","timeChae2":"00:00", # "timeChaf1":"22:00","timeChaf2":"00:00"} asyncio.run(main()) ``` -------------------------------- ### Update Charging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Sets the grid-charging schedule and battery high-capacity threshold. All six time/config fields are required in the JSON body. ```python async def update_in_charge_config_info( self, sn: str, bat_high_cap: int, grid_charge: int, time_chae1: str, time_chae2: str, time_chaf1: str, time_chaf2: str ) -> Optional[int]: params = { "sysSn": sn, "batHighCap": bat_high_cap, "gridCharge": grid_charge, "timeChae1": time_chae1, "timeChae2": time_chae2, "timeChaf1": time_chaf1, "timeChaf2": time_chaf2, } r = await self.__post_request("updateInChargeConfigInfo", params) if r and r["code"] in (200, 201): print("Charging config updated successfully") return r["code"] logger.error(f"updateInChargeConfigInfo error: {r['code']} {r['msg']}") return None # Usage: charge from grid 22:15–01:15, stop at 95% SOC async def main(): api = AlphaESSAPI() result = await api.update_in_charge_config_info( sn="ALB011020015002", bat_high_cap=95, grid_charge=1, time_chae1="01:15", time_chae2="00:00", time_chaf1="22:15", time_chaf2="00:00", ) print(result) # 200 asyncio.run(main()) ``` ```bash curl -X POST "https://openapi.alphaess.com/api/updateChargeConfigInfo" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" \ -H "Content-Type: application/json" \ -d '{ "sysSn": "ALB011020015002", "batHighCap": "95", "gridCharge": 1, "timeChae1": "01:15", "timeChae2": "00:00", "timeChaf1": "22:15", "timeChaf2": "00:00" }' # Response: {"code":200,"msg":"Success","data":null} ``` -------------------------------- ### Read Discharging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves the current battery discharge schedule and minimum reserve capacity for a given ESS. Response fields include minimum discharge reserve, discharge enable status, and discharge start/end times. ```python async def get_out_charge_config_info(self, sn: str) -> Optional[dict]: r = await self.__get_request("getOutChargeConfigInfo", {"sysSn": sn}) if r and r["code"] == 200: return r["data"] logger.error(f"getOutChargeConfigInfo error: {r['code']} {r['msg']}") return None # Usage async def main(): api = AlphaESSAPI() config = await api.get_out_charge_config_info("ALB011020015002") print(config) # Example output: # {"batUseCap":10,"ctrDis":1,"timeDise1":"23:00","timeDise2":"00:00", # "timeDisf1":"07:00","timeDisf2":"00:00"} asyncio.run(main()) ``` ```bash curl -X GET "https://openapi.alphaess.com/api/getDisChargeConfigInfo?sysSn=ALB011020015002" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` -------------------------------- ### Read Discharging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves the current battery discharge schedule and minimum reserve capacity for a given ESS. ```APIDOC ## GET /api/getDisChargeConfigInfo ### Description Retrieves the current battery discharge schedule and minimum reserve capacity for a given ESS. ### Method GET ### Endpoint /api/getDisChargeConfigInfo ### Parameters #### Query Parameters - **sysSn** (string) - Required - System serial number of the ESS unit. ### Response #### Success Response (200) - **code** (integer) - Response code, 200 for success. - **msg** (string) - Success message. - **data** (object) - Discharge configuration details. - **batUseCap** (integer) - Minimum discharge reserve capacity (percentage). - **ctrDis** (integer) - Discharge enabled status (1 for enabled, 0 for disabled). - **timeDise1** (string) - Discharge end time 1 (HH:MM format). - **timeDise2** (string) - Discharge end time 2 (HH:MM format). - **timeDisf1** (string) - Discharge start time 1 (HH:MM format). - **timeDisf2** (string) - Discharge start time 2 (HH:MM format). ### Response Example ```json { "batUseCap": 10, "ctrDis": 1, "timeDise1": "23:00", "timeDise2": "00:00", "timeDisf1": "07:00", "timeDisf2": "00:00" } ``` ``` -------------------------------- ### Update Charging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Sets the grid-charging schedule and battery high-capacity threshold for an ESS unit. All six time/config fields are required in the JSON body. ```APIDOC ## POST /api/updateChargeConfigInfo ### Description Sets the grid-charging schedule and battery high-capacity threshold for an ESS unit. All six time/config fields are required in the JSON body. ### Method POST ### Endpoint /api/updateChargeConfigInfo ### Parameters #### Request Body - **sysSn** (string) - Required - System serial number of the ESS unit. - **batHighCap** (integer) - Required - Battery high-capacity threshold (percentage). - **gridCharge** (integer) - Required - Enable grid charging (1 for enabled, 0 for disabled). - **timeChae1** (string) - Required - Charging end time 1 (HH:MM format). - **timeChae2** (string) - Required - Charging end time 2 (HH:MM format). - **timeChaf1** (string) - Required - Charging start time 1 (HH:MM format). - **timeChaf2** (string) - Required - Charging start time 2 (HH:MM format). ### Request Example ```json { "sysSn": "ALB011020015002", "batHighCap": 95, "gridCharge": 1, "timeChae1": "01:15", "timeChae2": "00:00", "timeChaf1": "22:15", "timeChaf2": "00:00" } ``` ### Response #### Success Response (200) - **code** (integer) - Response code, 200 for success. - **msg** (string) - Success message. - **data** (null) - No data returned on success. ``` -------------------------------- ### Update Discharging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Sets the discharge schedule and minimum battery reserve for an ESS unit. All six time/config fields are required. ```python async def update_out_charge_config_info( self, sn: str, bat_use_cap: int, ctr_dis: int, time_dise1: str, time_dise2: str, time_disf1: str, time_disf2: str ) -> Optional[int]: params = { "sysSn": sn, "batUseCap": bat_use_cap, "ctrDis": ctr_dis, "timeDise1": time_dise1, "timeDise2": time_dise2, "timeDisf1": time_disf1, "timeDisf2": time_disf2, } r = await self.__post_request("updateOutChargeConfigInfo", params) if r and r["code"] in (200, 201): print("Discharge config updated successfully") return r["code"] logger.error(f"updateOutChargeConfigInfo error: {r['code']} {r['msg']}") return None # Usage: discharge to grid 07:00–23:00, keep 10% SOC reserve async def main(): api = AlphaESSAPI() result = await api.update_out_charge_config_info( sn="ALB011020015002", bat_use_cap=10, ctr_dis=1, time_dise1="23:00", time_dise2="00:00", time_disf1="07:00", time_disf2="00:00", ) print(result) # 200 asyncio.run(main()) ``` ```bash curl -X POST "https://openapi.alphaess.com/api/updateDisChargeConfigInfo" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" \ -H "Content-Type: application/json" \ -d '{ "sysSn": "ALB011020015002", "batUseCap": 10, "ctrDis": 1, "timeDise1": "23:00", "timeDise2": "00:00", "timeDisf1": "07:00", "timeDisf2": "00:00" }' # Response: {"code":200,"msg":"Success","data":null} ``` -------------------------------- ### List Registered ESS Units Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Retrieves a list of all ESS units bound to the developer's application credentials. This endpoint also populates the `sys_sn_list` attribute in the Python client. ```APIDOC ## GET /api/getEssList ### Description Returns all ESS units bound to the developer's `appId`, including hardware metadata and system serial numbers (`sysSn`). Response fields include `cobat`, `emsStatus`, `mbat`, `minv`, `poinv`, `popv`, `surplusCobat`, `sysSn`, and `usCapacity`. ### Method GET ### Endpoint /api/getEssList ### Parameters #### Query Parameters None ### Request Example ```python # Python Client Example await api.get_ess_list() ``` ```bash # curl Example TIMESTAMP=$(date +%s) SIGN=$(echo -n "${APP_ID}${APP_SECRET}${TIMESTAMP}" | sha512sum | awk '{print $1}') curl -X GET "https://openapi.alphaess.com/api/getEssList" \ -H "appId: ${APP_ID}" \ -H "timeStamp: ${TIMESTAMP}" \ -H "sign: ${SIGN}" ``` ### Response #### Success Response (200) - **data** (list) - A list of ESS unit objects, each containing fields like `sysSn`, `usCapacity`, `emsStatus`, etc. #### Response Example ```json { "code": 200, "data": [ { "sysSn": "ALB011020015002", "usCapacity": 10.0, "emsStatus": 1, "cobat": 100, "mbat": 100, "minv": 100, "poinv": 100, "popv": 100, "surplusCobat": 100 } ] } ``` ``` -------------------------------- ### Update Discharging Schedule Settings Source: https://context7.com/alphaess-developer/alphacloud_open_api/llms.txt Sets the discharge schedule and minimum battery reserve for an ESS unit. All six time/config fields are required. ```APIDOC ## POST /api/updateDisChargeConfigInfo ### Description Sets the discharge schedule and minimum battery reserve for an ESS unit. All six time/config fields are required. ### Method POST ### Endpoint /api/updateDisChargeConfigInfo ### Parameters #### Request Body - **sysSn** (string) - Required - System serial number of the ESS unit. - **batUseCap** (integer) - Required - Minimum battery reserve capacity (percentage). - **ctrDis** (integer) - Required - Enable discharge (1 for enabled, 0 for disabled). - **timeDise1** (string) - Required - Discharge end time 1 (HH:MM format). - **timeDise2** (string) - Required - Discharge end time 2 (HH:MM format). - **timeDisf1** (string) - Required - Discharge start time 1 (HH:MM format). - **timeDisf2** (string) - Required - Discharge start time 2 (HH:MM format). ### Request Example ```json { "sysSn": "ALB011020015002", "batUseCap": 10, "ctrDis": 1, "timeDise1": "23:00", "timeDise2": "00:00", "timeDisf1": "07:00", "timeDisf2": "00:00" } ``` ### Response #### Success Response (200) - **code** (integer) - Response code, 200 for success. - **msg** (string) - Success message. - **data** (null) - No data returned on success. ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.