Reference for GetMachineOS

Url: pushinstall/GetMachineOS

HTTP Method: POST

Message direction Format Body
Request XML Example,Schema
Response XML Example,Schema

The following is an example request XML body:

<?xml version="1.0" encoding="utf-16"?>
<machineInfo i:type="pushInstallMachine" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://apprecovery.com/management/api/2010/05">
  <!--Valid elements of type: oracleInstanceCredentials, instanceCredentials, virtualInstanceCredentials-->
  <credentials i:type="oracleInstanceCredentials">
    <credentialsAccountId>1627aea5-8e0a-4371-9022-9b504344e724</credentialsAccountId>
    <encryptPassword>true</encryptPassword>
    <password>String content</password>
    <passwordEncrypted>String content</passwordEncrypted>
    <userName>String content</userName>
    <hostName>String content</hostName>
    <instanceServiceName>String content</instanceServiceName>
    <instanceSid>String content</instanceSid>
    <port>2147483647</port>
    <tnsNetworkAlias>String content</tnsNetworkAlias>
    <useWindowsAuthentication>true</useWindowsAuthentication>
  </credentials>
  <displayName>String content</displayName>
  <hostName>String content</hostName>
  <operatingSystem>Unknown</operatingSystem>
  <port>2147483647</port>
  <sshPort>4294967295</sshPort>
  <deployAction i:nil="true" />
  <failureReason>
    <message>String content</message>
    <type>String content</type>
    <detail>String content</detail>
    <stackTrace>String content</stackTrace>
    <serverException>
      <message>String content</message>
      <type>String content</type>
      <detail>String content</detail>
      <rawException>QmFzZSA2NCBTdHJlYW0=</rawException>
    </serverException>
  </failureReason>
  <fillWithDefaultProtectionConfiguration>true</fillWithDefaultProtectionConfiguration>
  <ignoreXPDriversReboot>true</ignoreXPDriversReboot>
  <isValidationFailed>true</isValidationFailed>
  <pauseConfiguration>
    <pauseInterval>P428DT10H30M12.3S</pauseInterval>
    <pauseType>None</pauseType>
    <pausedTimestamp>1999-05-31T11:20:00</pausedTimestamp>
    <pausedUntilUpgrade>true</pausedUntilUpgrade>
  </pauseConfiguration>
  <protectionGroupConfigurations>
    <pgConfig>
      <currentProtectionInterval>
        <endTime>P428DT10H30M12.3S</endTime>
        <priority>2147483647</priority>
        <startTime>P428DT10H30M12.3S</startTime>
        <step>P428DT10H30M12.3S</step>
      </currentProtectionInterval>
      <id>1627aea5-8e0a-4371-9022-9b504344e724</id>
      <nextSnap>1999-05-31T11:20:00</nextSnap>
      <transferScheduleConfiguration>
        <friday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </friday>
        <monday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </monday>
        <saturday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </saturday>
        <sunday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </sunday>
        <thursday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </thursday>
        <tuesday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </tuesday>
        <wednesday>
          <transferScheduleItemsCollection>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
            <!--Valid elements of type: intervalTransferScheduleItem-->
            <transferScheduleItem i:type="intervalTransferScheduleItem">
              <endTime>P428DT10H30M12.3S</endTime>
              <priority>2147483647</priority>
              <startTime>P428DT10H30M12.3S</startTime>
              <step>P428DT10H30M12.3S</step>
            </transferScheduleItem>
          </transferScheduleItemsCollection>
        </wednesday>
      </transferScheduleConfiguration>
      <volumeNames>
        <agentVolume>
          <guidName>String content</guidName>
          <displayName>String content</displayName>
          <lastSnapshotTime>1999-05-31T11:20:00</lastSnapshotTime>
          <driverId>1627aea5-8e0a-4371-9022-9b504344e724</driverId>
          <volumeFiles>
            <protectedFile>
              <clusterRepresentation>
                <ClusterNodeProtectedFile>
                  <nodeId>1627aea5-8e0a-4371-9022-9b504344e724</nodeId>
                  <nodeProtectedFileId>
                    <driverFileId />
                  </nodeProtectedFileId>
                </ClusterNodeProtectedFile>
                <ClusterNodeProtectedFile />
              </clusterRepresentation>
              <fileIdInfo>
                <driverFileId />
              </fileIdInfo>
            </protectedFile>
          </volumeFiles>
          <sharedVhdxOwners />
        </agentVolume>
        <agentVolume>
          <guidName />
        </agentVolume>
      </volumeNames>
    </pgConfig>
    <pgConfig>
      <currentProtectionInterval />
    </pgConfig>
  </protectionGroupConfigurations>
  <protectionStorageConfiguration />
  <resumeProtectionAfterUpgrade />
</machineInfo>

The following is an example response XML body:

<?xml version="1.0" encoding="utf-16"?>
<OperatingSystemFamily xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System">Unknown</OperatingSystemFamily>

The following is the request XML Schema:

<?xml version="1.0" encoding="utf-16"?>
<Schemas>
  <xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="anyType" nillable="true" type="xs:anyType" />
    <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
    <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
    <xs:element name="boolean" nillable="true" type="xs:boolean" />
    <xs:element name="byte" nillable="true" type="xs:byte" />
    <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
    <xs:element name="decimal" nillable="true" type="xs:decimal" />
    <xs:element name="double" nillable="true" type="xs:double" />
    <xs:element name="float" nillable="true" type="xs:float" />
    <xs:element name="int" nillable="true" type="xs:int" />
    <xs:element name="long" nillable="true" type="xs:long" />
    <xs:element name="QName" nillable="true" type="xs:QName" />
    <xs:element name="short" nillable="true" type="xs:short" />
    <xs:element name="string" nillable="true" type="xs:string" />
    <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
    <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
    <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
    <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
    <xs:element name="char" nillable="true" type="tns:char" />
    <xs:simpleType name="char">
      <xs:restriction base="xs:int" />
    </xs:simpleType>
    <xs:element name="duration" nillable="true" type="tns:duration" />
    <xs:simpleType name="duration">
      <xs:restriction base="xs:duration">
        <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
        <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
        <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="guid" nillable="true" type="tns:guid" />
    <xs:simpleType name="guid">
      <xs:restriction base="xs:string">
        <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
      </xs:restriction>
    </xs:simpleType>
    <xs:attribute name="FactoryType" type="xs:QName" />
    <xs:attribute name="Id" type="xs:ID" />
    <xs:attribute name="Ref" type="xs:IDREF" />
  </xs:schema>
  <xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="http://apprecovery.com/management/api/2010/05" elementFormDefault="qualified" targetNamespace="http://apprecovery.com/management/api/2010/05" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System" />
    <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.PushInstall" />
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.Transfer" />
    <xs:complexType name="machineInfo">
      <xs:sequence>
        <xs:element minOccurs="0" name="credentials" nillable="true" type="tns:baseCredentials" />
        <xs:element minOccurs="0" name="displayName" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="hostName" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="operatingSystem" xmlns:q1="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System" type="q1:OperatingSystemFamily" />
        <xs:element minOccurs="0" name="port" type="xs:int" />
        <xs:element minOccurs="0" name="sshPort" type="xs:unsignedInt" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="machineInfo" nillable="true" type="tns:machineInfo" />
    <xs:complexType name="baseCredentials">
      <xs:sequence>
        <xs:element minOccurs="0" name="credentialsAccountId" type="ser:guid" />
        <xs:element minOccurs="0" name="encryptPassword" type="xs:boolean" />
        <xs:element minOccurs="0" name="password" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="passwordEncrypted" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="userName" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="baseCredentials" nillable="true" type="tns:baseCredentials" />
    <xs:complexType name="oracleInstanceCredentials">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:baseCredentials">
          <xs:sequence>
            <xs:element minOccurs="0" name="hostName" nillable="true" type="xs:string" />
            <xs:element minOccurs="0" name="instanceServiceName" nillable="true" type="xs:string" />
            <xs:element minOccurs="0" name="instanceSid" nillable="true" type="xs:string" />
            <xs:element minOccurs="0" name="port" type="xs:int" />
            <xs:element minOccurs="0" name="tnsNetworkAlias" nillable="true" type="xs:string" />
            <xs:element minOccurs="0" name="useWindowsAuthentication" type="xs:boolean" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="oracleInstanceCredentials" nillable="true" type="tns:oracleInstanceCredentials" />
    <xs:complexType name="instanceCredentials">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:baseCredentials">
          <xs:sequence>
            <xs:element minOccurs="0" name="instanceName" nillable="true" type="xs:string" />
            <xs:element minOccurs="0" name="useDefaultCredentials" type="xs:boolean" />
            <xs:element minOccurs="0" name="useWindowsAuthentication" type="xs:boolean" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="instanceCredentials" nillable="true" type="tns:instanceCredentials" />
    <xs:complexType name="virtualInstanceCredentials">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:instanceCredentials">
          <xs:sequence>
            <xs:element minOccurs="0" name="virtualServerName" nillable="true" type="xs:string" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="virtualInstanceCredentials" nillable="true" type="tns:virtualInstanceCredentials" />
    <xs:complexType name="pushInstallMachine">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:machineInfo">
          <xs:sequence>
            <xs:element minOccurs="0" name="deployAction" xmlns:q2="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.PushInstall" type="q2:DeployAction" />
            <xs:element minOccurs="0" name="failureReason" nillable="true" type="tns:serverError" />
            <xs:element minOccurs="0" name="fillWithDefaultProtectionConfiguration" type="xs:boolean" />
            <xs:element minOccurs="0" name="ignoreXPDriversReboot" type="xs:boolean" />
            <xs:element minOccurs="0" name="isValidationFailed" type="xs:boolean" />
            <xs:element minOccurs="0" name="pauseConfiguration" nillable="true" type="tns:protectionPauseConfiguration" />
            <xs:element minOccurs="0" name="protectionGroupConfigurations" nillable="true" type="tns:agentProtectionGroupConfigs" />
            <xs:element minOccurs="0" name="protectionStorageConfiguration" nillable="true" type="tns:protectionStorageConfig" />
            <xs:element minOccurs="0" name="resumeProtectionAfterUpgrade" type="xs:boolean" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="pushInstallMachine" nillable="true" type="tns:pushInstallMachine" />
    <xs:complexType name="serverError">
      <xs:sequence>
        <xs:element minOccurs="0" name="message" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="type" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="detail" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="stackTrace" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="serverException" nillable="true" type="tns:exception" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="serverError" nillable="true" type="tns:serverError" />
    <xs:complexType name="exception">
      <xs:sequence>
        <xs:element minOccurs="0" name="message" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="type" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="detail" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="rawException" nillable="true" type="xs:base64Binary">
          <xs:annotation>
            <xs:appinfo>
              <DefaultValue EmitDefaultValue="false" xmlns="http://schemas.microsoft.com/2003/10/Serialization/" />
            </xs:appinfo>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
    <xs:element name="exception" nillable="true" type="tns:exception" />
    <xs:complexType name="protectionPauseConfiguration">
      <xs:sequence>
        <xs:element minOccurs="0" name="pauseInterval" type="ser:duration" />
        <xs:element minOccurs="0" name="pauseType" xmlns:q3="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.Transfer" type="q3:ProtectionPauseType" />
        <xs:element minOccurs="0" name="pausedTimestamp" type="xs:dateTime" />
        <xs:element minOccurs="0" name="pausedUntilUpgrade" type="xs:boolean" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="protectionPauseConfiguration" nillable="true" type="tns:protectionPauseConfiguration" />
    <xs:complexType name="agentProtectionGroupConfigs">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="pgConfig" nillable="true" type="tns:pgConfig" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="agentProtectionGroupConfigs" nillable="true" type="tns:agentProtectionGroupConfigs" />
    <xs:complexType name="pgConfig">
      <xs:sequence>
        <xs:element minOccurs="0" name="currentProtectionInterval" nillable="true" type="tns:intervalTransferScheduleItem" />
        <xs:element minOccurs="0" name="id" type="ser:guid" />
        <xs:element minOccurs="0" name="nextSnap" nillable="true" type="xs:dateTime" />
        <xs:element minOccurs="0" name="transferScheduleConfiguration" nillable="true" type="tns:transferScheduleConfiguration" />
        <xs:element minOccurs="0" name="volumeNames" nillable="true" type="tns:agentVolumes" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="pgConfig" nillable="true" type="tns:pgConfig" />
    <xs:complexType name="intervalTransferScheduleItem">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:transferScheduleItem">
          <xs:sequence>
            <xs:element minOccurs="0" name="endTime" type="ser:duration" />
            <xs:element minOccurs="0" name="priority" type="xs:int" />
            <xs:element minOccurs="0" name="startTime" type="ser:duration" />
            <xs:element minOccurs="0" name="step" type="ser:duration" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="intervalTransferScheduleItem" nillable="true" type="tns:intervalTransferScheduleItem" />
    <xs:complexType name="transferScheduleItem">
      <xs:sequence />
    </xs:complexType>
    <xs:element name="transferScheduleItem" nillable="true" type="tns:transferScheduleItem" />
    <xs:complexType name="transferScheduleConfiguration">
      <xs:sequence>
        <xs:element minOccurs="0" name="friday" nillable="true" type="tns:transfersAgenda" />
        <xs:element minOccurs="0" name="monday" nillable="true" type="tns:transfersAgenda" />
        <xs:element minOccurs="0" name="saturday" nillable="true" type="tns:transfersAgenda" />
        <xs:element minOccurs="0" name="sunday" nillable="true" type="tns:transfersAgenda" />
        <xs:element minOccurs="0" name="thursday" nillable="true" type="tns:transfersAgenda" />
        <xs:element minOccurs="0" name="tuesday" nillable="true" type="tns:transfersAgenda" />
        <xs:element minOccurs="0" name="wednesday" nillable="true" type="tns:transfersAgenda" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="transferScheduleConfiguration" nillable="true" type="tns:transferScheduleConfiguration" />
    <xs:complexType name="transfersAgenda">
      <xs:sequence>
        <xs:element minOccurs="0" name="transferScheduleItemsCollection" nillable="true" type="tns:transferScheduleItemsCollection" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="transfersAgenda" nillable="true" type="tns:transfersAgenda" />
    <xs:complexType name="transferScheduleItemsCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="transferScheduleItem" nillable="true" type="tns:transferScheduleItem" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="transferScheduleItemsCollection" nillable="true" type="tns:transferScheduleItemsCollection" />
    <xs:complexType name="agentVolumes">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="agentVolume" nillable="true" type="tns:agentVolume" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="agentVolumes" nillable="true" type="tns:agentVolumes" />
    <xs:complexType name="agentVolume">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:volumeName">
          <xs:sequence>
            <xs:element minOccurs="0" name="lastSnapshotTime" nillable="true" type="xs:dateTime" />
            <xs:element minOccurs="0" name="driverId" type="ser:guid" />
            <xs:element minOccurs="0" name="volumeFiles" nillable="true" type="tns:volumeFiles" />
            <xs:element minOccurs="0" name="sharedVhdxOwners" nillable="true" type="tns:guidCollection" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="agentVolume" nillable="true" type="tns:agentVolume" />
    <xs:complexType name="volumeName">
      <xs:sequence>
        <xs:element minOccurs="0" name="guidName" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="displayName" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="volumeName" nillable="true" type="tns:volumeName" />
    <xs:complexType name="volumeFiles">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="protectedFile" nillable="true" type="tns:protectedFile" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="volumeFiles" nillable="true" type="tns:volumeFiles" />
    <xs:complexType name="protectedFile">
      <xs:sequence>
        <xs:element minOccurs="0" name="clusterRepresentation" nillable="true" type="tns:clusterNodesProtectedFileCollection" />
        <xs:element minOccurs="0" name="fileIdInfo" nillable="true" type="tns:FileIdInfo" />
        <xs:element minOccurs="0" name="fileToHostMapping" nillable="true" type="tns:hyperVServerFileIdInfoCollection" />
        <xs:element minOccurs="0" name="isSharedVirtualDisk" type="xs:boolean" />
        <xs:element minOccurs="0" name="virtualDiskPath" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="protectedFile" nillable="true" type="tns:protectedFile" />
    <xs:complexType name="clusterNodesProtectedFileCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="ClusterNodeProtectedFile" nillable="true" type="tns:protectedFilesClusterNodesRepresentation" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="clusterNodesProtectedFileCollection" nillable="true" type="tns:clusterNodesProtectedFileCollection" />
    <xs:complexType name="protectedFilesClusterNodesRepresentation">
      <xs:sequence>
        <xs:element minOccurs="0" name="nodeId" type="ser:guid" />
        <xs:element minOccurs="0" name="nodeProtectedFileId" nillable="true" type="tns:FileIdInfo" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="protectedFilesClusterNodesRepresentation" nillable="true" type="tns:protectedFilesClusterNodesRepresentation" />
    <xs:complexType name="FileIdInfo">
      <xs:sequence>
        <xs:element minOccurs="0" name="driverFileId" type="xs:int" />
        <xs:element minOccurs="0" name="fileIdHighPart" type="xs:unsignedLong" />
        <xs:element minOccurs="0" name="fileIdLowPart" type="xs:unsignedLong" />
        <xs:element minOccurs="0" name="volumeSerialNumber" type="xs:unsignedLong" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="FileIdInfo" nillable="true" type="tns:FileIdInfo" />
    <xs:complexType name="hyperVServerFileIdInfoCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="hyperVServerFileIdInfo" nillable="true" type="tns:hyperVServerFileIdInfo" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="hyperVServerFileIdInfoCollection" nillable="true" type="tns:hyperVServerFileIdInfoCollection" />
    <xs:complexType name="hyperVServerFileIdInfo">
      <xs:sequence>
        <xs:element minOccurs="0" name="agentId" type="ser:guid" />
        <xs:element minOccurs="0" name="protectedFileId" nillable="true" type="tns:FileIdInfo" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="hyperVServerFileIdInfo" nillable="true" type="tns:hyperVServerFileIdInfo" />
    <xs:complexType name="guidCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="guid" type="ser:guid" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="guidCollection" nillable="true" type="tns:guidCollection" />
    <xs:complexType name="protectionStorageConfig">
      <xs:sequence>
        <xs:element minOccurs="0" name="enableSafeDataStoring" type="xs:boolean" />
        <xs:element minOccurs="0" name="encryptionKeyId" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="repositoryName" type="ser:guid" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="protectionStorageConfig" nillable="true" type="tns:protectionStorageConfig" />
    <xs:complexType name="relatedServerMachineInfo">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:machineInfo">
          <xs:sequence>
            <xs:element minOccurs="0" name="hyperVHostName" nillable="true" type="xs:string" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="relatedServerMachineInfo" nillable="true" type="tns:relatedServerMachineInfo" />
  </xs:schema>
  <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:simpleType name="OperatingSystemFamily">
      <xs:restriction base="xs:string">
        <xs:enumeration value="Unknown" />
        <xs:enumeration value="Windows2000" />
        <xs:enumeration value="WindowsXP" />
        <xs:enumeration value="WindowsServer2003" />
        <xs:enumeration value="WindowsServer2003R2" />
        <xs:enumeration value="WindowsVista" />
        <xs:enumeration value="WindowsServer2008" />
        <xs:enumeration value="WindowsServer2008R2" />
        <xs:enumeration value="Windows7" />
        <xs:enumeration value="Windows8" />
        <xs:enumeration value="WindowsServer2012" />
        <xs:enumeration value="Linux" />
        <xs:enumeration value="Windows81" />
        <xs:enumeration value="WindowsServer2012R2" />
        <xs:enumeration value="LinuxDebian" />
        <xs:enumeration value="LinuxOpensuse" />
        <xs:enumeration value="LinuxRedhat6" />
        <xs:enumeration value="LinuxSles" />
        <xs:enumeration value="LinuxUbuntu" />
        <xs:enumeration value="LinuxCentos" />
        <xs:enumeration value="LinuxCentos5" />
        <xs:enumeration value="LinuxCentos6" />
        <xs:enumeration value="LinuxCentos7" />
        <xs:enumeration value="LinuxRedhat5" />
        <xs:enumeration value="LinuxRedhat7" />
        <xs:enumeration value="LinuxOracle5" />
        <xs:enumeration value="LinuxOracle6" />
        <xs:enumeration value="LinuxOracle7" />
        <xs:enumeration value="LinuxSles11" />
        <xs:enumeration value="LinuxSles12" />
        <xs:enumeration value="Windows" />
        <xs:enumeration value="LinuxDebian7" />
        <xs:enumeration value="LinuxDebian8" />
        <xs:enumeration value="LinuxUbuntu12" />
        <xs:enumeration value="LinuxUbuntu13" />
        <xs:enumeration value="LinuxUbuntu14" />
        <xs:enumeration value="LinuxUbuntu15" />
        <xs:enumeration value="Windows10" />
        <xs:enumeration value="WindowsServer2016" />
        <xs:enumeration value="LinuxOracle" />
        <xs:enumeration value="LinuxRedhat" />
        <xs:enumeration value="LinuxUbuntu16" />
        <xs:enumeration value="LinuxScientific" />
        <xs:enumeration value="LinuxScientific5" />
        <xs:enumeration value="LinuxScientific6" />
        <xs:enumeration value="LinuxScientific7" />
        <xs:enumeration value="LinuxUbuntu17" />
        <xs:enumeration value="LinuxDebian9" />
        <xs:enumeration value="LinuxSled" />
        <xs:enumeration value="LinuxSled11" />
        <xs:enumeration value="LinuxSled12" />
        <xs:enumeration value="LinuxUbuntu18" />
        <xs:enumeration value="WindowsServer2019" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="OperatingSystemFamily" nillable="true" type="tns:OperatingSystemFamily" />
  </xs:schema>
  <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.PushInstall" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.PushInstall" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    <xs:simpleType name="DeployAction">
      <xs:list>
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="None">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">0</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="Install">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="Uninstall">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="WaitForAgentOnline">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">4</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="Protect">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">8</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:list>
    </xs:simpleType>
    <xs:element name="DeployAction" nillable="true" type="tns:DeployAction" />
  </xs:schema>
  <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.Transfer" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Core.Contracts.Transfer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:simpleType name="ProtectionPauseType">
      <xs:restriction base="xs:string">
        <xs:enumeration value="None" />
        <xs:enumeration value="PauseUntilResumed" />
        <xs:enumeration value="PauseUntilTime" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="ProtectionPauseType" nillable="true" type="tns:ProtectionPauseType" />
  </xs:schema>
</Schemas>

The following is the response XML Schema:

<?xml version="1.0" encoding="utf-16"?>
<Schemas>
  <xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="anyType" nillable="true" type="xs:anyType" />
    <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
    <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
    <xs:element name="boolean" nillable="true" type="xs:boolean" />
    <xs:element name="byte" nillable="true" type="xs:byte" />
    <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
    <xs:element name="decimal" nillable="true" type="xs:decimal" />
    <xs:element name="double" nillable="true" type="xs:double" />
    <xs:element name="float" nillable="true" type="xs:float" />
    <xs:element name="int" nillable="true" type="xs:int" />
    <xs:element name="long" nillable="true" type="xs:long" />
    <xs:element name="QName" nillable="true" type="xs:QName" />
    <xs:element name="short" nillable="true" type="xs:short" />
    <xs:element name="string" nillable="true" type="xs:string" />
    <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
    <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
    <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
    <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
    <xs:element name="char" nillable="true" type="tns:char" />
    <xs:simpleType name="char">
      <xs:restriction base="xs:int" />
    </xs:simpleType>
    <xs:element name="duration" nillable="true" type="tns:duration" />
    <xs:simpleType name="duration">
      <xs:restriction base="xs:duration">
        <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
        <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
        <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="guid" nillable="true" type="tns:guid" />
    <xs:simpleType name="guid">
      <xs:restriction base="xs:string">
        <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
      </xs:restriction>
    </xs:simpleType>
    <xs:attribute name="FactoryType" type="xs:QName" />
    <xs:attribute name="Id" type="xs:ID" />
    <xs:attribute name="Ref" type="xs:IDREF" />
  </xs:schema>
  <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Metadata.System" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:simpleType name="OperatingSystemFamily">
      <xs:restriction base="xs:string">
        <xs:enumeration value="Unknown" />
        <xs:enumeration value="Windows2000" />
        <xs:enumeration value="WindowsXP" />
        <xs:enumeration value="WindowsServer2003" />
        <xs:enumeration value="WindowsServer2003R2" />
        <xs:enumeration value="WindowsVista" />
        <xs:enumeration value="WindowsServer2008" />
        <xs:enumeration value="WindowsServer2008R2" />
        <xs:enumeration value="Windows7" />
        <xs:enumeration value="Windows8" />
        <xs:enumeration value="WindowsServer2012" />
        <xs:enumeration value="Linux" />
        <xs:enumeration value="Windows81" />
        <xs:enumeration value="WindowsServer2012R2" />
        <xs:enumeration value="LinuxDebian" />
        <xs:enumeration value="LinuxOpensuse" />
        <xs:enumeration value="LinuxRedhat6" />
        <xs:enumeration value="LinuxSles" />
        <xs:enumeration value="LinuxUbuntu" />
        <xs:enumeration value="LinuxCentos" />
        <xs:enumeration value="LinuxCentos5" />
        <xs:enumeration value="LinuxCentos6" />
        <xs:enumeration value="LinuxCentos7" />
        <xs:enumeration value="LinuxRedhat5" />
        <xs:enumeration value="LinuxRedhat7" />
        <xs:enumeration value="LinuxOracle5" />
        <xs:enumeration value="LinuxOracle6" />
        <xs:enumeration value="LinuxOracle7" />
        <xs:enumeration value="LinuxSles11" />
        <xs:enumeration value="LinuxSles12" />
        <xs:enumeration value="Windows" />
        <xs:enumeration value="LinuxDebian7" />
        <xs:enumeration value="LinuxDebian8" />
        <xs:enumeration value="LinuxUbuntu12" />
        <xs:enumeration value="LinuxUbuntu13" />
        <xs:enumeration value="LinuxUbuntu14" />
        <xs:enumeration value="LinuxUbuntu15" />
        <xs:enumeration value="Windows10" />
        <xs:enumeration value="WindowsServer2016" />
        <xs:enumeration value="LinuxOracle" />
        <xs:enumeration value="LinuxRedhat" />
        <xs:enumeration value="LinuxUbuntu16" />
        <xs:enumeration value="LinuxScientific" />
        <xs:enumeration value="LinuxScientific5" />
        <xs:enumeration value="LinuxScientific6" />
        <xs:enumeration value="LinuxScientific7" />
        <xs:enumeration value="LinuxUbuntu17" />
        <xs:enumeration value="LinuxDebian9" />
        <xs:enumeration value="LinuxSled" />
        <xs:enumeration value="LinuxSled11" />
        <xs:enumeration value="LinuxSled12" />
        <xs:enumeration value="LinuxUbuntu18" />
        <xs:enumeration value="WindowsServer2019" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="OperatingSystemFamily" nillable="true" type="tns:OperatingSystemFamily" />
  </xs:schema>
</Schemas>