Getting information about signal controllers of a subnetwork
Returns the signal controllers and their signal programs associated to a micro simulation subnetwork.
Authentication phase
Before using the endpoint, you must run the authentication phase (→ Login).
After the authentication, a session opens and a valid session token persists until:
- The end of the session time-out, that is set through the parameter sessionTimeout (→ OptimaWSI configuration > OptimaAuth section).
- An explicit Logout call (→ Logout).

Request
GET
https://<OPTIMA_HOST_IP_ADDRESS>:<PORT_NUMBER>/optimissim/subnetwork/{SubnetworkId}/controller
The path parameter SubnetworkId must be specified and valid as obtained from → Getting information about micro simulation subnetworks.
Request parameters
Not applicable.
Request content-type
Not applicable.
Request body (payload)
Not applicable.

Response status
HTTP status | Description |
---|---|
200 OK |
If the requested SubnetworkId exists and if it has signal controllers. |
404 Not Found |
If the SubnetworkId was not found, the service answers with 404 and with the message “No microsimulation subnetwork found from Subnet SubnetworkId” in the entity. If the SubnetworkId does not have any signal controllers, the service answers with 404 and with the message “No Signal Controller found for Subnetwork with Subnet SubnetworkId” in the entity. |
For the complete list of error codes and messages, see → Optima Micro: error codes and response status > Error codes of the Optima Micro API.
Response content-type
application/json
Response output
JSON message with signal controllers, their signal programs and descriptive data.

Request
https://<OPTIMA_HOST_IP_ADDRESS>:<PORT_NUMBER>/optimissim/subnetwork/2/controller
Response status
HTTP status | Description |
---|---|
200 OK |
Result of the processed request. |
Response output
{
"subnetId": 2,
"name": null,
"description": null,
"availableControllerActions": [
{
"controllerID": 323,
"controllerName": "K_323",
"controllerSignalPrograms": [
{
"controllerSignalProgramID": 1,
"controllerSignalProgramName": "Phase 2, Phase 3, Phase 4, Phase 5",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 2,
"controllerSignalProgramName": "Phase 2, Phase 3, Phase 4, Phase 5",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 3,
"controllerSignalProgramName": "Phase 2, Phase 3, Phase 4, Phase 5",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
}
]
},
{
"controllerID": 324,
"controllerName": "K_324",
"controllerSignalPrograms": [
{
"controllerSignalProgramID": 1,
"controllerSignalProgramName": "Stage 1+, Stage 4+, Stage 3+",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 2,
"controllerSignalProgramName": "Stage 1+, Stage 4+, Stage 3+",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 3,
"controllerSignalProgramName": "Stage 1+, Stage 4+, Stage 3+",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
}
]
},
{
"controllerID": 325,
"controllerName": "K_325",
"controllerSignalPrograms": [
{
"controllerSignalProgramID": 1,
"controllerSignalProgramName": "Phase 1, Phase 4, Phase 5",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 2,
"controllerSignalProgramName": "Phase 1, Phase 4, Phase 5",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 3,
"controllerSignalProgramName": "Phase 1, Phase 4, Phase 5",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
}
]
},
{
"controllerID": 326,
"controllerName": "K_326",
"controllerSignalPrograms": [
{
"controllerSignalProgramID": 1,
"controllerSignalProgramName": "Stage 1, Phase 2, Phase 3, Phase 9",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 2,
"controllerSignalProgramName": "Stage 1, Phase 2, Phase 3, Phase 9",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 3,
"controllerSignalProgramName": "Stage 1, Phase 2, Phase 3, Phase 9",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
}
]
},
{
"controllerID": 311,
"controllerName": "K_311",
"controllerSignalPrograms": [
{
"controllerSignalProgramID": 1,
"controllerSignalProgramName": "Phase 1, Phase 2, Phase 3, Phase 4",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 2,
"controllerSignalProgramName": "Phase 1, Phase 2, Phase 3, Phase 4",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 3,
"controllerSignalProgramName": "Phase 1, Phase 2, Phase 3, Phase 4",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
}
]
},
{
"controllerID": 312,
"controllerName": "K_312",
"controllerSignalPrograms": [
{
"controllerSignalProgramID": 1,
"controllerSignalProgramName": "Phase 1, Phase 3, Phase 2, Phase 4",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 2,
"controllerSignalProgramName": "Phase 1, Phase 3, Phase 2, Phase 4",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
},
{
"controllerSignalProgramID": 3,
"controllerSignalProgramName": "Phase 1, Phase 3, Phase 2, Phase 4",
"controllerSignalProgramCycleTime": 100,
"controllerSignalProgramType": 3
}
]
}
]
}