PUT api/ControlSystems

Update a Control System

Request Information

URI Parameters

None.

Body Parameters

The Control System to be updated

Update_ControlSystem
NameDescriptionTypeAdditional information
ID

Control System ID

integer

None.

ConditionGroups

Collection of Condition Groups to utilise within the Control System

Collection of Update_ConditionGroup

None.

EmergencyStop

Action Group to utilise when an emergency stop is activated on this Control System

Update_ActionGroup

None.

Name

Control System Name

string

None.

Description

Control System Description

string

None.

Enabled

Whether or not the Control System is enabled

boolean

None.

ClientID

ID of the Client this Control System is within

integer

None.

Request Formats

application/json, text/json, text/html

Sample:
{
  "ID": 1,
  "ConditionGroups": [
    {
      "ID": 1,
      "ConditionIDs": [
        1,
        2
      ],
      "WhenTrueAction": {
        "ID": 1,
        "Actions": [
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          },
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          }
        ]
      },
      "WhenFalseAction": {
        "ID": 1,
        "Actions": [
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          },
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          }
        ]
      },
      "Index": 1
    },
    {
      "ID": 1,
      "ConditionIDs": [
        1,
        2
      ],
      "WhenTrueAction": {
        "ID": 1,
        "Actions": [
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          },
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          }
        ]
      },
      "WhenFalseAction": {
        "ID": 1,
        "Actions": [
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          },
          {
            "ID": 1,
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          }
        ]
      },
      "Index": 1
    }
  ],
  "EmergencyStop": {
    "ID": 1,
    "Actions": [
      {
        "ID": 1,
        "Type": 0,
        "TargetID": 1,
        "TargetType": 10,
        "Value": 1.0
      },
      {
        "ID": 1,
        "Type": 0,
        "TargetID": 1,
        "TargetType": 10,
        "Value": 1.0
      }
    ]
  },
  "Name": "sample string 2",
  "Description": "sample string 3",
  "Enabled": true,
  "ClientID": 1
}

application/x-www-form-urlencoded

Sample:

Failed to generate the sample for media type 'application/x-www-form-urlencoded'. Cannot use formatter 'JQueryMvcFormUrlEncodedFormatter' to write type 'Update_ControlSystem'.

Response Information

Resource Description

Returns the updated Control System and messages

GetControlSystemResponse
NameDescriptionTypeAdditional information
ControlSystems

Array of Control Systems

Collection of ControlSystemStruct

None.

Messages

Array of messages

Collection of Message

None.

ServerInformation

Relevant information regarding the Server

ServerInformation

None.

VersionInformation

Relevant information regarding the API's version

VersionInformation

None.

Response Formats

application/json, text/json, text/html

Sample:
{
  "ControlSystems": [
    {
      "ID": 1,
      "ClientName": "sample string 2",
      "LastHandledDt": "2026-10-18T10:27:07.1737096+10:00",
      "ConditionGroups": [
        {
          "Conditions": [
            {
              "Name": "sample string 1",
              "ID": 2
            },
            {
              "Name": "sample string 1",
              "ID": 2
            }
          ],
          "WhenTrue": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "WhenFalse": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "Index": 1,
          "ID": 1
        },
        {
          "Conditions": [
            {
              "Name": "sample string 1",
              "ID": 2
            },
            {
              "Name": "sample string 1",
              "ID": 2
            }
          ],
          "WhenTrue": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "WhenFalse": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "Index": 1,
          "ID": 1
        }
      ],
      "EmergencyStop": {
        "Actions": [
          {
            "TypeName": "SetDevice",
            "TargetTypeName": "Device",
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          },
          {
            "TypeName": "SetDevice",
            "TargetTypeName": "Device",
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          }
        ],
        "ID": 1
      },
      "Name": "sample string 3",
      "Description": "sample string 4",
      "Enabled": true,
      "ClientID": 1
    },
    {
      "ID": 1,
      "ClientName": "sample string 2",
      "LastHandledDt": "2026-10-18T10:27:07.1737096+10:00",
      "ConditionGroups": [
        {
          "Conditions": [
            {
              "Name": "sample string 1",
              "ID": 2
            },
            {
              "Name": "sample string 1",
              "ID": 2
            }
          ],
          "WhenTrue": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "WhenFalse": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "Index": 1,
          "ID": 1
        },
        {
          "Conditions": [
            {
              "Name": "sample string 1",
              "ID": 2
            },
            {
              "Name": "sample string 1",
              "ID": 2
            }
          ],
          "WhenTrue": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "WhenFalse": {
            "ParentID": 1,
            "ParentType": null,
            "ID": 1
          },
          "Index": 1,
          "ID": 1
        }
      ],
      "EmergencyStop": {
        "Actions": [
          {
            "TypeName": "SetDevice",
            "TargetTypeName": "Device",
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          },
          {
            "TypeName": "SetDevice",
            "TargetTypeName": "Device",
            "Type": 0,
            "TargetID": 1,
            "TargetType": 10,
            "Value": 1.0
          }
        ],
        "ID": 1
      },
      "Name": "sample string 3",
      "Description": "sample string 4",
      "Enabled": true,
      "ClientID": 1
    }
  ],
  "Messages": [
    {
      "Severity": 0,
      "MessageCode": 1,
      "CodeDesc": 2,
      "MessageText": "sample string 3",
      "RecordNumber": 4
    },
    {
      "Severity": 0,
      "MessageCode": 1,
      "CodeDesc": 2,
      "MessageText": "sample string 3",
      "RecordNumber": 4
    }
  ],
  "ServerInformation": {
    "CurrentTimeUTC": "2026-10-18T10:27:07.1737096+10:00",
    "BuildDateUTC": "2026-10-18T10:27:07.1737096+10:00"
  },
  "VersionInformation": {
    "Major": 1,
    "Minor": 8,
    "Hotfix": 0,
    "Beta": true,
    "Version": "1.8.0.BETA"
  }
}