Instruction endpoints¶
The /api/v1/sec/instr endpoints mirror the SolarUser Instruction API and allow
external applications to issue instructions directly to SolarNode.
POST /instr/add/{topic}¶
Queue an instruction to execute. See the SolarUser endpoint for more details.
Note
SolarNode will attempt to execute the instruction before responding, which differs from
how the SolarNetwork API works. Be sure to check the response state to see if the
instruction was already executed or will execute in the future.
| POST | /api/v1/sec/instr/add/{topic} |
|---|---|
topic |
The instruction topic. |
The request body should be a JSON object with the following properties:
| Property | Type | Description |
|---|---|---|
parameters |
Object[] | An array of parameter objects, which each have name and value String properties. |
params |
Object | An object whose keys represent parameter names, with associated values. |
Tip
If parameters are required for the instruction topic, one of parameters or params should
be used, but not both.
Send a POST /api/v1/sec/instr/add/SetControlParameter request with the following JSON content:
{
"params": {
"/switch/1": "1"
}
}
{
"success": true,
"data": {
"instructionId": 1782532316363,
"state": "Completed",
"statusDate": "2026-06-27 03:51:56.364468629Z"
}
}
POST /instr/updateState¶
Update the state of existing instructions.
| POST | /api/v1/sec/instr/instr/updateState |
|---|---|
id |
The ID of a single instruction to update. |
ids |
A comma-delimited list of instruction IDs to update. |
state |
The desired state to set the matching instructions to; one of Completed or Declined. |
The request body should be an application/x-www-form-urlencoded encoding of the request parameters.
Send a POST /api/v1/sec/instr/updateState request with the following content:
id=1782532316363&state=Declined
{
"success": true
}
GET /instr/view¶
View one or more instruction satuses.
| POST | /api/v1/sec/instr/instr/view |
|---|---|
id |
The ID of a single instruction to view. |
ids |
A comma-delimited list of instruction IDs to view. |
The request body should be an application/x-www-form-urlencoded encoding of the request parameters.
Warning
Instructions created with the local /add endpoint that end up
executing and the result returned in the response will not be available from this
endpoint, as those instructions are not persisted in SolarNode for future execution.
Send a POST /api/v1/sec/instr/updateState request with the following content:
id=1782532316364
{
"success": true,
"data": {
"id": 1782532316364,
"topic": "SetControlParameter",
"instructionDate": "2026-06-27 04:06:57.939226Z",
"parameters": [
{
"name": "test/switch",
"value": "1"
}
],
"state": "Received",
"statusDate": "2026-06-27 16:07:00.017207Z"
}
}