POST api/Programs

Create a

Request Information

URI Parameters

None.

Body Parameters

The to be created

Add_Program
NameDescriptionTypeAdditional information
Name

Name of the Program to add

string

None.

Description

Description of the Program to add

string

None.

StartDate

Optional specification for the StartDate of the Program

date

None.

OwnerID

The integer ID of the Owner for this Program

integer

None.

OwnerType

The type of Owner for this program

OwnerType

None.

Settings

Optional settings that affect the running of the Program once it has been turned into a Schedule

ProgramSettings

None.

ProgramGroups

The ProgramGroups of the Program to add

Collection of Add_ProgramGroup

None.

Request Formats

application/json, text/json, text/html

Sample:
{
  "Name": "sample string 1",
  "Description": "sample string 2",
  "StartDate": "2025-11-09T21:25:10.0461678+10:00",
  "OwnerID": 1,
  "OwnerType": 10,
  "Settings": {
    "AutoCancel": true,
    "HaltQueueOnError": true,
    "CommandRetryLimit": 1,
    "ResendOnError": true,
    "ResendOnErrorLimit": 1,
    "AllowStartDateAdjustment": true,
    "SendPeriod": "00:00:00.1234567"
  },
  "ProgramGroups": [
    {
      "ID": 1,
      "Name": "sample string 1",
      "Description": "sample string 2",
      "ParentGroupID": 1,
      "Offset": "00:00:00.1234567",
      "LinkID": 1,
      "LinkObjectType": 0,
      "LinkType": 0,
      "DisplayIndex": 1,
      "ProgramSteps": [
        {
          "ID": 1,
          "GroupID": 1,
          "Description": "sample string 1",
          "ProgramStepType": 0,
          "DisplayIndex": 1,
          "LinkID": 1,
          "LinkObjectType": 0,
          "LinkType": 0,
          "DeviceID": 1,
          "SetValue": 1.1,
          "ReturnValue": 1.1,
          "StartDate": "2025-11-09T21:25:10.0461678+10:00",
          "FinishDate": "2025-11-09T21:25:10.0461678+10:00",
          "StartOffset": "00:00:00.1234567",
          "FinishOffset": "00:00:00.1234567",
          "Offset": "00:00:00.1234567",
          "Duration": "00:00:00.1234567",
          "LinkedDeviceID": 2,
          "LinkCutoffValue": 3.1,
          "BatchTotalised": true
        },
        {
          "ID": 1,
          "GroupID": 1,
          "Description": "sample string 1",
          "ProgramStepType": 0,
          "DisplayIndex": 1,
          "LinkID": 1,
          "LinkObjectType": 0,
          "LinkType": 0,
          "DeviceID": 1,
          "SetValue": 1.1,
          "ReturnValue": 1.1,
          "StartDate": "2025-11-09T21:25:10.0461678+10:00",
          "FinishDate": "2025-11-09T21:25:10.0461678+10:00",
          "StartOffset": "00:00:00.1234567",
          "FinishOffset": "00:00:00.1234567",
          "Offset": "00:00:00.1234567",
          "Duration": "00:00:00.1234567",
          "LinkedDeviceID": 2,
          "LinkCutoffValue": 3.1,
          "BatchTotalised": true
        }
      ]
    },
    {
      "ID": 1,
      "Name": "sample string 1",
      "Description": "sample string 2",
      "ParentGroupID": 1,
      "Offset": "00:00:00.1234567",
      "LinkID": 1,
      "LinkObjectType": 0,
      "LinkType": 0,
      "DisplayIndex": 1,
      "ProgramSteps": [
        {
          "ID": 1,
          "GroupID": 1,
          "Description": "sample string 1",
          "ProgramStepType": 0,
          "DisplayIndex": 1,
          "LinkID": 1,
          "LinkObjectType": 0,
          "LinkType": 0,
          "DeviceID": 1,
          "SetValue": 1.1,
          "ReturnValue": 1.1,
          "StartDate": "2025-11-09T21:25:10.0461678+10:00",
          "FinishDate": "2025-11-09T21:25:10.0461678+10:00",
          "StartOffset": "00:00:00.1234567",
          "FinishOffset": "00:00:00.1234567",
          "Offset": "00:00:00.1234567",
          "Duration": "00:00:00.1234567",
          "LinkedDeviceID": 2,
          "LinkCutoffValue": 3.1,
          "BatchTotalised": true
        },
        {
          "ID": 1,
          "GroupID": 1,
          "Description": "sample string 1",
          "ProgramStepType": 0,
          "DisplayIndex": 1,
          "LinkID": 1,
          "LinkObjectType": 0,
          "LinkType": 0,
          "DeviceID": 1,
          "SetValue": 1.1,
          "ReturnValue": 1.1,
          "StartDate": "2025-11-09T21:25:10.0461678+10:00",
          "FinishDate": "2025-11-09T21:25:10.0461678+10:00",
          "StartOffset": "00:00:00.1234567",
          "FinishOffset": "00:00:00.1234567",
          "Offset": "00:00:00.1234567",
          "Duration": "00:00:00.1234567",
          "LinkedDeviceID": 2,
          "LinkCutoffValue": 3.1,
          "BatchTotalised": true
        }
      ]
    }
  ]
}

application/xml, text/xml

Sample:
<APIStructs.Add_Program xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/RimikAPI.Models">
  <Description>sample string 2</Description>
  <Name>sample string 1</Name>
  <OwnerID>1</OwnerID>
  <OwnerType>Device</OwnerType>
  <ProgramGroups>
    <APIStructs.Add_ProgramGroup>
      <Description>sample string 2</Description>
      <DisplayIndex>1</DisplayIndex>
      <ID>1</ID>
      <LinkID>1</LinkID>
      <LinkObjectType>None</LinkObjectType>
      <LinkType>StartToStart</LinkType>
      <Name>sample string 1</Name>
      <Offset>PT0.1234567S</Offset>
      <ParentGroupID>1</ParentGroupID>
      <ProgramSteps>
        <APIStructs.Add_ProgramStep>
          <BatchTotalised>true</BatchTotalised>
          <Description>sample string 1</Description>
          <DeviceID>1</DeviceID>
          <DisplayIndex>1</DisplayIndex>
          <Duration>PT0.1234567S</Duration>
          <FinishDate>2025-11-09T21:25:10.0461678+10:00</FinishDate>
          <FinishOffset>PT0.1234567S</FinishOffset>
          <GroupID>1</GroupID>
          <ID>1</ID>
          <LinkCutoffValue>3.1</LinkCutoffValue>
          <LinkID>1</LinkID>
          <LinkObjectType>None</LinkObjectType>
          <LinkType>StartToStart</LinkType>
          <LinkedDeviceID>2</LinkedDeviceID>
          <Offset>PT0.1234567S</Offset>
          <ProgramStepType>None</ProgramStepType>
          <ReturnValue>1.1</ReturnValue>
          <SetValue>1.1</SetValue>
          <StartDate>2025-11-09T21:25:10.0461678+10:00</StartDate>
          <StartOffset>PT0.1234567S</StartOffset>
        </APIStructs.Add_ProgramStep>
        <APIStructs.Add_ProgramStep>
          <BatchTotalised>true</BatchTotalised>
          <Description>sample string 1</Description>
          <DeviceID>1</DeviceID>
          <DisplayIndex>1</DisplayIndex>
          <Duration>PT0.1234567S</Duration>
          <FinishDate>2025-11-09T21:25:10.0461678+10:00</FinishDate>
          <FinishOffset>PT0.1234567S</FinishOffset>
          <GroupID>1</GroupID>
          <ID>1</ID>
          <LinkCutoffValue>3.1</LinkCutoffValue>
          <LinkID>1</LinkID>
          <LinkObjectType>None</LinkObjectType>
          <LinkType>StartToStart</LinkType>
          <LinkedDeviceID>2</LinkedDeviceID>
          <Offset>PT0.1234567S</Offset>
          <ProgramStepType>None</ProgramStepType>
          <ReturnValue>1.1</ReturnValue>
          <SetValue>1.1</SetValue>
          <StartDate>2025-11-09T21:25:10.0461678+10:00</StartDate>
          <StartOffset>PT0.1234567S</StartOffset>
        </APIStructs.Add_ProgramStep>
      </ProgramSteps>
    </APIStructs.Add_ProgramGroup>
    <APIStructs.Add_ProgramGroup>
      <Description>sample string 2</Description>
      <DisplayIndex>1</DisplayIndex>
      <ID>1</ID>
      <LinkID>1</LinkID>
      <LinkObjectType>None</LinkObjectType>
      <LinkType>StartToStart</LinkType>
      <Name>sample string 1</Name>
      <Offset>PT0.1234567S</Offset>
      <ParentGroupID>1</ParentGroupID>
      <ProgramSteps>
        <APIStructs.Add_ProgramStep>
          <BatchTotalised>true</BatchTotalised>
          <Description>sample string 1</Description>
          <DeviceID>1</DeviceID>
          <DisplayIndex>1</DisplayIndex>
          <Duration>PT0.1234567S</Duration>
          <FinishDate>2025-11-09T21:25:10.0461678+10:00</FinishDate>
          <FinishOffset>PT0.1234567S</FinishOffset>
          <GroupID>1</GroupID>
          <ID>1</ID>
          <LinkCutoffValue>3.1</LinkCutoffValue>
          <LinkID>1</LinkID>
          <LinkObjectType>None</LinkObjectType>
          <LinkType>StartToStart</LinkType>
          <LinkedDeviceID>2</LinkedDeviceID>
          <Offset>PT0.1234567S</Offset>
          <ProgramStepType>None</ProgramStepType>
          <ReturnValue>1.1</ReturnValue>
          <SetValue>1.1</SetValue>
          <StartDate>2025-11-09T21:25:10.0461678+10:00</StartDate>
          <StartOffset>PT0.1234567S</StartOffset>
        </APIStructs.Add_ProgramStep>
        <APIStructs.Add_ProgramStep>
          <BatchTotalised>true</BatchTotalised>
          <Description>sample string 1</Description>
          <DeviceID>1</DeviceID>
          <DisplayIndex>1</DisplayIndex>
          <Duration>PT0.1234567S</Duration>
          <FinishDate>2025-11-09T21:25:10.0461678+10:00</FinishDate>
          <FinishOffset>PT0.1234567S</FinishOffset>
          <GroupID>1</GroupID>
          <ID>1</ID>
          <LinkCutoffValue>3.1</LinkCutoffValue>
          <LinkID>1</LinkID>
          <LinkObjectType>None</LinkObjectType>
          <LinkType>StartToStart</LinkType>
          <LinkedDeviceID>2</LinkedDeviceID>
          <Offset>PT0.1234567S</Offset>
          <ProgramStepType>None</ProgramStepType>
          <ReturnValue>1.1</ReturnValue>
          <SetValue>1.1</SetValue>
          <StartDate>2025-11-09T21:25:10.0461678+10:00</StartDate>
          <StartOffset>PT0.1234567S</StartOffset>
        </APIStructs.Add_ProgramStep>
      </ProgramSteps>
    </APIStructs.Add_ProgramGroup>
  </ProgramGroups>
  <Settings>
    <AllowStartDateAdjustment>true</AllowStartDateAdjustment>
    <AutoCancel>true</AutoCancel>
    <CommandRetryLimit>1</CommandRetryLimit>
    <HaltQueueOnError>true</HaltQueueOnError>
    <ResendOnError>true</ResendOnError>
    <ResendOnErrorLimit>1</ResendOnErrorLimit>
    <SendPeriod>PT0.1234567S</SendPeriod>
  </Settings>
  <StartDate>2025-11-09T21:25:10.0461678+10:00</StartDate>
</APIStructs.Add_Program>

application/x-www-form-urlencoded

Sample:

Sample not available.

Response Information

Resource Description

Returns the created and messages

GetProgramsResponse
NameDescriptionTypeAdditional information
Programs

Array of Programs

Collection of Program

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:
{
  "Programs": [
    {
      "ID": 1,
      "Name": "sample string 2",
      "Description": "sample string 3",
      "StartDate": "2025-11-09T21:25:10.1867852+10:00",
      "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
      "OwnerID": 6,
      "OwnerType": 10,
      "Settings": {
        "AutoCancel": true,
        "HaltQueueOnError": true,
        "CommandRetryLimit": 1,
        "ResendOnError": true,
        "ResendOnErrorLimit": 1,
        "AllowStartDateAdjustment": true,
        "SendPeriod": "00:00:00.1234567"
      },
      "ProgramGroups": [
        {
          "ID": 1,
          "Name": "sample string 2",
          "Description": "sample string 3",
          "ParentGroupID": 4,
          "DisplayIndex": 5,
          "Offset": "00:00:00.1234567",
          "StartDate": "2025-11-09T21:25:10.1867852+10:00",
          "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
          "LinkID": 9,
          "LinkObjectType": 0,
          "LinkType": 0,
          "TotalTime": "00:00:00.1234567",
          "ProgramSteps": [
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            },
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            }
          ]
        },
        {
          "ID": 1,
          "Name": "sample string 2",
          "Description": "sample string 3",
          "ParentGroupID": 4,
          "DisplayIndex": 5,
          "Offset": "00:00:00.1234567",
          "StartDate": "2025-11-09T21:25:10.1867852+10:00",
          "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
          "LinkID": 9,
          "LinkObjectType": 0,
          "LinkType": 0,
          "TotalTime": "00:00:00.1234567",
          "ProgramSteps": [
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            },
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            }
          ]
        }
      ]
    },
    {
      "ID": 1,
      "Name": "sample string 2",
      "Description": "sample string 3",
      "StartDate": "2025-11-09T21:25:10.1867852+10:00",
      "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
      "OwnerID": 6,
      "OwnerType": 10,
      "Settings": {
        "AutoCancel": true,
        "HaltQueueOnError": true,
        "CommandRetryLimit": 1,
        "ResendOnError": true,
        "ResendOnErrorLimit": 1,
        "AllowStartDateAdjustment": true,
        "SendPeriod": "00:00:00.1234567"
      },
      "ProgramGroups": [
        {
          "ID": 1,
          "Name": "sample string 2",
          "Description": "sample string 3",
          "ParentGroupID": 4,
          "DisplayIndex": 5,
          "Offset": "00:00:00.1234567",
          "StartDate": "2025-11-09T21:25:10.1867852+10:00",
          "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
          "LinkID": 9,
          "LinkObjectType": 0,
          "LinkType": 0,
          "TotalTime": "00:00:00.1234567",
          "ProgramSteps": [
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            },
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            }
          ]
        },
        {
          "ID": 1,
          "Name": "sample string 2",
          "Description": "sample string 3",
          "ParentGroupID": 4,
          "DisplayIndex": 5,
          "Offset": "00:00:00.1234567",
          "StartDate": "2025-11-09T21:25:10.1867852+10:00",
          "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
          "LinkID": 9,
          "LinkObjectType": 0,
          "LinkType": 0,
          "TotalTime": "00:00:00.1234567",
          "ProgramSteps": [
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            },
            {
              "ID": 1,
              "GroupID": 2,
              "Description": "sample string 3",
              "ProgramStepType": 0,
              "DisplayIndex": 1,
              "LinkID": 4,
              "LinkObjectType": 0,
              "LinkType": 0,
              "DeviceID": 5,
              "DeviceName": "sample string 6",
              "SetValue": 7.1,
              "ReturnValue": 8.1,
              "StartDate": "2025-11-09T21:25:10.1867852+10:00",
              "FinishDate": "2025-11-09T21:25:10.1867852+10:00",
              "StartOffset": "00:00:00.1234567",
              "FinishOffset": "00:00:00.1234567",
              "Offset": "00:00:00.1234567",
              "Duration": "00:00:00.1234567",
              "LinkedDeviceID": 15,
              "LinkedDeviceName": "sample string 16",
              "LinkCutoffValue": 17.1,
              "BatchTotalised": true
            }
          ]
        }
      ]
    }
  ],
  "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": "2025-11-09T21:25:10.1867852+10:00",
    "BuildDateUTC": "2025-11-09T21:25:10.1867852+10:00"
  },
  "VersionInformation": {
    "Major": 1,
    "Minor": 3,
    "Hotfix": 7,
    "Beta": false,
    "Version": "1.3.7"
  }
}

application/xml, text/xml

Sample:
<GetProgramsResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/RimikAPI.Models.Responses">
  <Messages xmlns:d2p1="http://schemas.datacontract.org/2004/07/RimikAPI.Services">
    <d2p1:Common.Message>
      <d2p1:CodeDesc>2</d2p1:CodeDesc>
      <d2p1:MessageCode>1</d2p1:MessageCode>
      <d2p1:MessageText>sample string 3</d2p1:MessageText>
      <d2p1:RecordNumber>4</d2p1:RecordNumber>
      <d2p1:Severity>Information</d2p1:Severity>
    </d2p1:Common.Message>
    <d2p1:Common.Message>
      <d2p1:CodeDesc>2</d2p1:CodeDesc>
      <d2p1:MessageCode>1</d2p1:MessageCode>
      <d2p1:MessageText>sample string 3</d2p1:MessageText>
      <d2p1:RecordNumber>4</d2p1:RecordNumber>
      <d2p1:Severity>Information</d2p1:Severity>
    </d2p1:Common.Message>
  </Messages>
  <ServerInformation xmlns:d2p1="http://schemas.datacontract.org/2004/07/RimikAPI.Services.Metadata">
    <d2p1:BuildDateUTC>2025-11-09T21:25:10.1867852+10:00</d2p1:BuildDateUTC>
    <d2p1:CurrentTimeUTC>2025-11-09T21:25:10.1867852+10:00</d2p1:CurrentTimeUTC>
  </ServerInformation>
  <VersionInformation xmlns:d2p1="http://schemas.datacontract.org/2004/07/RimikAPI.Services.Metadata" />
  <Programs xmlns:d2p1="http://schemas.datacontract.org/2004/07/RimikAPI.Models">
    <d2p1:APIStructs.Program>
      <d2p1:Description>sample string 3</d2p1:Description>
      <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
      <d2p1:ID>1</d2p1:ID>
      <d2p1:Name>sample string 2</d2p1:Name>
      <d2p1:OwnerID>6</d2p1:OwnerID>
      <d2p1:OwnerType>Device</d2p1:OwnerType>
      <d2p1:ProgramGroups>
        <d2p1:APIStructs.ProgramGroup>
          <d2p1:Description>sample string 3</d2p1:Description>
          <d2p1:DisplayIndex>5</d2p1:DisplayIndex>
          <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
          <d2p1:ID>1</d2p1:ID>
          <d2p1:LinkID>9</d2p1:LinkID>
          <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
          <d2p1:LinkType>StartToStart</d2p1:LinkType>
          <d2p1:Name>sample string 2</d2p1:Name>
          <d2p1:Offset>PT0.1234567S</d2p1:Offset>
          <d2p1:ParentGroupID>4</d2p1:ParentGroupID>
          <d2p1:ProgramSteps>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
          </d2p1:ProgramSteps>
          <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
          <d2p1:TotalTime>PT0.1234567S</d2p1:TotalTime>
        </d2p1:APIStructs.ProgramGroup>
        <d2p1:APIStructs.ProgramGroup>
          <d2p1:Description>sample string 3</d2p1:Description>
          <d2p1:DisplayIndex>5</d2p1:DisplayIndex>
          <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
          <d2p1:ID>1</d2p1:ID>
          <d2p1:LinkID>9</d2p1:LinkID>
          <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
          <d2p1:LinkType>StartToStart</d2p1:LinkType>
          <d2p1:Name>sample string 2</d2p1:Name>
          <d2p1:Offset>PT0.1234567S</d2p1:Offset>
          <d2p1:ParentGroupID>4</d2p1:ParentGroupID>
          <d2p1:ProgramSteps>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
          </d2p1:ProgramSteps>
          <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
          <d2p1:TotalTime>PT0.1234567S</d2p1:TotalTime>
        </d2p1:APIStructs.ProgramGroup>
      </d2p1:ProgramGroups>
      <d2p1:Settings>
        <d2p1:AllowStartDateAdjustment>true</d2p1:AllowStartDateAdjustment>
        <d2p1:AutoCancel>true</d2p1:AutoCancel>
        <d2p1:CommandRetryLimit>1</d2p1:CommandRetryLimit>
        <d2p1:HaltQueueOnError>true</d2p1:HaltQueueOnError>
        <d2p1:ResendOnError>true</d2p1:ResendOnError>
        <d2p1:ResendOnErrorLimit>1</d2p1:ResendOnErrorLimit>
        <d2p1:SendPeriod>PT0.1234567S</d2p1:SendPeriod>
      </d2p1:Settings>
      <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
    </d2p1:APIStructs.Program>
    <d2p1:APIStructs.Program>
      <d2p1:Description>sample string 3</d2p1:Description>
      <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
      <d2p1:ID>1</d2p1:ID>
      <d2p1:Name>sample string 2</d2p1:Name>
      <d2p1:OwnerID>6</d2p1:OwnerID>
      <d2p1:OwnerType>Device</d2p1:OwnerType>
      <d2p1:ProgramGroups>
        <d2p1:APIStructs.ProgramGroup>
          <d2p1:Description>sample string 3</d2p1:Description>
          <d2p1:DisplayIndex>5</d2p1:DisplayIndex>
          <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
          <d2p1:ID>1</d2p1:ID>
          <d2p1:LinkID>9</d2p1:LinkID>
          <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
          <d2p1:LinkType>StartToStart</d2p1:LinkType>
          <d2p1:Name>sample string 2</d2p1:Name>
          <d2p1:Offset>PT0.1234567S</d2p1:Offset>
          <d2p1:ParentGroupID>4</d2p1:ParentGroupID>
          <d2p1:ProgramSteps>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
          </d2p1:ProgramSteps>
          <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
          <d2p1:TotalTime>PT0.1234567S</d2p1:TotalTime>
        </d2p1:APIStructs.ProgramGroup>
        <d2p1:APIStructs.ProgramGroup>
          <d2p1:Description>sample string 3</d2p1:Description>
          <d2p1:DisplayIndex>5</d2p1:DisplayIndex>
          <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
          <d2p1:ID>1</d2p1:ID>
          <d2p1:LinkID>9</d2p1:LinkID>
          <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
          <d2p1:LinkType>StartToStart</d2p1:LinkType>
          <d2p1:Name>sample string 2</d2p1:Name>
          <d2p1:Offset>PT0.1234567S</d2p1:Offset>
          <d2p1:ParentGroupID>4</d2p1:ParentGroupID>
          <d2p1:ProgramSteps>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
            <d2p1:APIStructs.ProgramStep>
              <d2p1:BatchTotalised>true</d2p1:BatchTotalised>
              <d2p1:Description>sample string 3</d2p1:Description>
              <d2p1:DeviceID>5</d2p1:DeviceID>
              <d2p1:DeviceName>sample string 6</d2p1:DeviceName>
              <d2p1:DisplayIndex>1</d2p1:DisplayIndex>
              <d2p1:Duration>PT0.1234567S</d2p1:Duration>
              <d2p1:FinishDate>2025-11-09T21:25:10.1867852+10:00</d2p1:FinishDate>
              <d2p1:FinishOffset>PT0.1234567S</d2p1:FinishOffset>
              <d2p1:GroupID>2</d2p1:GroupID>
              <d2p1:ID>1</d2p1:ID>
              <d2p1:LinkCutoffValue>17.1</d2p1:LinkCutoffValue>
              <d2p1:LinkID>4</d2p1:LinkID>
              <d2p1:LinkObjectType>None</d2p1:LinkObjectType>
              <d2p1:LinkType>StartToStart</d2p1:LinkType>
              <d2p1:LinkedDeviceID>15</d2p1:LinkedDeviceID>
              <d2p1:LinkedDeviceName>sample string 16</d2p1:LinkedDeviceName>
              <d2p1:Offset>PT0.1234567S</d2p1:Offset>
              <d2p1:ProgramStepType>None</d2p1:ProgramStepType>
              <d2p1:ReturnValue>8.1</d2p1:ReturnValue>
              <d2p1:SetValue>7.1</d2p1:SetValue>
              <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
              <d2p1:StartOffset>PT0.1234567S</d2p1:StartOffset>
            </d2p1:APIStructs.ProgramStep>
          </d2p1:ProgramSteps>
          <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
          <d2p1:TotalTime>PT0.1234567S</d2p1:TotalTime>
        </d2p1:APIStructs.ProgramGroup>
      </d2p1:ProgramGroups>
      <d2p1:Settings>
        <d2p1:AllowStartDateAdjustment>true</d2p1:AllowStartDateAdjustment>
        <d2p1:AutoCancel>true</d2p1:AutoCancel>
        <d2p1:CommandRetryLimit>1</d2p1:CommandRetryLimit>
        <d2p1:HaltQueueOnError>true</d2p1:HaltQueueOnError>
        <d2p1:ResendOnError>true</d2p1:ResendOnError>
        <d2p1:ResendOnErrorLimit>1</d2p1:ResendOnErrorLimit>
        <d2p1:SendPeriod>PT0.1234567S</d2p1:SendPeriod>
      </d2p1:Settings>
      <d2p1:StartDate>2025-11-09T21:25:10.1867852+10:00</d2p1:StartDate>
    </d2p1:APIStructs.Program>
  </Programs>
</GetProgramsResponse>