IAMMETER firmware Local APIs
IAMMETER supports local HTTP APIs. See the official documentation for real-device capabilities. This simulator implements only the subset listed below.
Paths and sessions
Prefix every meter endpoint with /WEM3080, /WEM2067 or /WEM3050T. Device pages and APIs support HTTP on port 80 as well as HTTPS on port 443. Physical devices normally use local HTTP.
Public measurement requests work without a session and return the default Inverter and grid source. Private settings require the existing meter-page cookie. A separate curl request does not inherit your browser’s selected source or settings.
HTTP and HTTPS use separate browser sessions. Open the meter page using the same scheme before changing settings. Anonymous reads use the default Inverter and grid source.
Supported firmware API subset
| Method | Endpoint | Purpose | Supported models |
|---|---|---|---|
| GET | /api/monitor | Read voltage, current, power and energy. | All models |
| GET | /api/monitorjson · /monitorjson | Read legacy JSON, with optional reactive data. | All models |
| GET | /api/wifidata | Read virtual Wi-Fi and device settings. | All models |
| POST | /api/setwifiadv | Save virtual Wi-Fi settings for this session and model. | All models |
| GET | /api/getadv | Read advanced and upload settings; password is empty. | All models |
| POST | /api/setadv | Save upload settings, Reactive and NEM flags. | All models; NEM only on WEM3050T |
Measurement responses
WEM3080 returns Data; WEM2067 and WEM3050T return Datas with one row per channel. Field order is shown below. Examples are illustrative, not live responses.
| Index | Measurement | Unit |
|---|---|---|
| 0 | Voltage | V |
| 1 | Current | A |
| 2 | Active power | W |
| 3 | Import energy | kWh |
| 4 | Export energy | kWh |
| 5 | Frequency | Hz |
| 6 | Power factor | — |
Read public measurements
curl 'https://simulator.iammeter.com/WEM3050T/api/monitor'Response shape
{
"ssid": "IAMMETER-Simulator",
"sig": 100,
"mac": "020000003050",
"version": "simulator-1.0",
"server": "em",
"SN": "1AD9B537",
"model": "WEM3050T",
"Datas": [
[230.0,1.252,270.0,2.092,0.000,50.00,0.94],
[229.5,0.487,110.0,1.280,0.000,50.00,0.98],
[229.0,0.399,90.0,0.747,0.000,50.00,0.98]
]
}Virtual Wi-Fi settings
setwifiadv accepts ssid, pwd, dhcp (boolean), ip, netmask, gw and dns. These values change the virtual device only; they do not reconfigure a network adapter.
Example request body
{"ssid":"Test network","dhcp":true}Successful save
{"successful":1,"message":"ok"}Advanced settings
setadv accepts partial JSON updates. Unspecified fields keep their current values. Upload interval is 10–3600 seconds.
Reactive adds EA.Reactive to monitorjson and uploads, not api/monitor. Each row is [var, inductive kvarh, capacitive kvarh].
NEM is supported only by WEM3050T. Its fourth Datas row sums active power, import kWh and export kWh separately; all other fields are zero.
| Parameter | Accepted values |
|---|---|
| runMode | 1 = TCP/TLS; 2 = HTTP/HTTPS; 3 = MQTT/MQTTS; 4 = stand alone |
| uploadAddress | Receiver address; follow the Settings input hint. |
| mqttUsername · mqttPassword | Broker credentials; getadv never returns the saved password. |
| uploadInterval | 10–3600 s |
| reactive | 0 / 1 |
| netmetering | 0 / 1 |
| ntpServer | Stored text only; does not change server time. |
| haDiscovery · ctcRatio | Only 0 and 1 respectively; features are not implemented. |
Enable Reactive and NEM on WEM3050T
{"reactive":1,"netmetering":1}Checking results
A successful save returns successful=1. Invalid setting values can return HTTP 200 with successful=0; check the JSON as well as the status code. Missing sessions return 401; cross-origin writes are rejected.
Saving upload settings does not prove delivery. Check the debug upload status and confirm messages at your receiver.
Not implemented
The functions below are display-only or unsupported. They do not provide working write APIs.
| Function | Current behavior |
|---|---|
| Wi-Fi scan · restart · factory reset | No real operation. |
| Device Security · firmware upgrade | Display only. |
| IAMMETER-cloud · HA Discovery · MQTT downlink | No cloud upload, discovery or remote configuration. |
Simulator tools are documented separately
Simulator debug endpoints are not IAMMETER firmware APIs. They are excluded from the firmware API list above.