Reference for TakeSnapshot

Url: hypervTransferDirectToTarget/snapshotsHyperv

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"?>
<takeSnapshotHyperVRequest xmlns="http://apprecovery.com/management/api/2010/05">
  <enableVerification>true</enableVerification>
  <excludedFilesSettings>
    <useDefaultSettings>true</useDefaultSettings>
    <isExcludeDeletedBlocks>true</isExcludeDeletedBlocks>
    <isExcludeSwapFiles>true</isExcludeSwapFiles>
    <isExcludeSubdirectories>true</isExcludeSubdirectories>
    <excludedFilesAndFolders>
      <excludedFileAndFolder>
        <excludedFileAndFolderPath>String content</excludedFileAndFolderPath>
        <volumeName>
          <guidName>String content</guidName>
          <displayName>String content</displayName>
        </volumeName>
      </excludedFileAndFolder>
      <excludedFileAndFolder>
        <excludedFileAndFolderPath>String content</excludedFileAndFolderPath>
        <volumeName>
          <guidName>String content</guidName>
          <displayName>String content</displayName>
        </volumeName>
      </excludedFileAndFolder>
    </excludedFilesAndFolders>
  </excludedFilesSettings>
  <excludedVssWriterIds>
    <guid xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">1627aea5-8e0a-4371-9022-9b504344e724</guid>
    <guid xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">1627aea5-8e0a-4371-9022-9b504344e724</guid>
  </excludedVssWriterIds>
  <excludedVssWriters>
    <ExcludedWriter xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer">
      <_x003C_Id_x003E_k__BackingField>1627aea5-8e0a-4371-9022-9b504344e724</_x003C_Id_x003E_k__BackingField>
      <_x003C_Name_x003E_k__BackingField>String content</_x003C_Name_x003E_k__BackingField>
    </ExcludedWriter>
    <ExcludedWriter xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer">
      <_x003C_Id_x003E_k__BackingField>1627aea5-8e0a-4371-9022-9b504344e724</_x003C_Id_x003E_k__BackingField>
      <_x003C_Name_x003E_k__BackingField>String content</_x003C_Name_x003E_k__BackingField>
    </ExcludedWriter>
  </excludedVssWriters>
  <id>1627aea5-8e0a-4371-9022-9b504344e724</id>
  <key>String content</key>
  <latestEpochSeenByCore>4294967295</latestEpochSeenByCore>
  <logTruncationRequest>
    <existTargetComponents i:nil="true" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" />
    <logTruncationTargets i:nil="true" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" />
  </logTruncationRequest>
  <performCloudTransfer>true</performCloudTransfer>
  <performDirectToTargetTransfer>true</performDirectToTargetTransfer>
  <readTimeout>P428DT10H30M12.3S</readTimeout>
  <shadowCopyType>Unknown</shadowCopyType>
  <skipTargetComponents>
    <KeyValueOfTargetComponentTypesstringCollectionIBaVneRM xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <Key i:nil="true" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" />
      <Value>
        <string xmlns="http://apprecovery.com/management/api/2010/05">String content</string>
        <string xmlns="http://apprecovery.com/management/api/2010/05">String content</string>
      </Value>
    </KeyValueOfTargetComponentTypesstringCollectionIBaVneRM>
    <KeyValueOfTargetComponentTypesstringCollectionIBaVneRM xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <Key i:nil="true" xmlns:i="http://www.w3.org/2001/XMLSchema-instance" />
      <Value>
        <string xmlns="http://apprecovery.com/management/api/2010/05">String content</string>
        <string xmlns="http://apprecovery.com/management/api/2010/05">String content</string>
      </Value>
    </KeyValueOfTargetComponentTypesstringCollectionIBaVneRM>
  </skipTargetComponents>
  <transferDataReaderPort>65535</transferDataReaderPort>
  <transferEncryptionKey>
    <unsignedByte xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">255</unsignedByte>
    <unsignedByte xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">255</unsignedByte>
  </transferEncryptionKey>
  <transferTimeout>P428DT10H30M12.3S</transferTimeout>
  <volumes>
    <volumeName>
      <guidName>String content</guidName>
      <displayName>String content</displayName>
    </volumeName>
    <volumeName>
      <guidName>String content</guidName>
      <displayName>String content</displayName>
    </volumeName>
  </volumes>
  <vssProviderId>1627aea5-8e0a-4371-9022-9b504344e724</vssProviderId>
  <vssRetryCount>4294967295</vssRetryCount>
  <vssSecondsRetryDelay>4294967295</vssSecondsRetryDelay>
  <writeTimeout>P428DT10H30M12.3S</writeTimeout>
  <agentId>1627aea5-8e0a-4371-9022-9b504344e724</agentId>
  <clusterAgentsIds>
    <clusterAgentId>String content</clusterAgentId>
    <clusterAgentId>String content</clusterAgentId>
  </clusterAgentsIds>
  <hyperVSnapshotConfiguration>tryCreateVssSnapshot</hyperVSnapshotConfiguration>
  <internalIds>
    <protectedFile>
      <clusterRepresentation>
        <ClusterNodeProtectedFile>
          <nodeId>1627aea5-8e0a-4371-9022-9b504344e724</nodeId>
          <nodeProtectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </nodeProtectedFileId>
        </ClusterNodeProtectedFile>
        <ClusterNodeProtectedFile>
          <nodeId>1627aea5-8e0a-4371-9022-9b504344e724</nodeId>
          <nodeProtectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </nodeProtectedFileId>
        </ClusterNodeProtectedFile>
      </clusterRepresentation>
      <fileIdInfo>
        <driverFileId>2147483647</driverFileId>
        <fileIdHighPart>18446744073709551615</fileIdHighPart>
        <fileIdLowPart>18446744073709551615</fileIdLowPart>
        <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
      </fileIdInfo>
      <fileToHostMapping>
        <hyperVServerFileIdInfo>
          <agentId>1627aea5-8e0a-4371-9022-9b504344e724</agentId>
          <protectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </protectedFileId>
        </hyperVServerFileIdInfo>
        <hyperVServerFileIdInfo>
          <agentId>1627aea5-8e0a-4371-9022-9b504344e724</agentId>
          <protectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </protectedFileId>
        </hyperVServerFileIdInfo>
      </fileToHostMapping>
      <isSharedVirtualDisk>true</isSharedVirtualDisk>
      <virtualDiskPath>String content</virtualDiskPath>
    </protectedFile>
    <protectedFile>
      <clusterRepresentation>
        <ClusterNodeProtectedFile>
          <nodeId>1627aea5-8e0a-4371-9022-9b504344e724</nodeId>
          <nodeProtectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </nodeProtectedFileId>
        </ClusterNodeProtectedFile>
        <ClusterNodeProtectedFile>
          <nodeId>1627aea5-8e0a-4371-9022-9b504344e724</nodeId>
          <nodeProtectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </nodeProtectedFileId>
        </ClusterNodeProtectedFile>
      </clusterRepresentation>
      <fileIdInfo>
        <driverFileId>2147483647</driverFileId>
        <fileIdHighPart>18446744073709551615</fileIdHighPart>
        <fileIdLowPart>18446744073709551615</fileIdLowPart>
        <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
      </fileIdInfo>
      <fileToHostMapping>
        <hyperVServerFileIdInfo>
          <agentId>1627aea5-8e0a-4371-9022-9b504344e724</agentId>
          <protectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </protectedFileId>
        </hyperVServerFileIdInfo>
        <hyperVServerFileIdInfo>
          <agentId>1627aea5-8e0a-4371-9022-9b504344e724</agentId>
          <protectedFileId>
            <driverFileId>2147483647</driverFileId>
            <fileIdHighPart>18446744073709551615</fileIdHighPart>
            <fileIdLowPart>18446744073709551615</fileIdLowPart>
            <volumeSerialNumber>18446744073709551615</volumeSerialNumber>
          </protectedFileId>
        </hyperVServerFileIdInfo>
      </fileToHostMapping>
      <isSharedVirtualDisk>true</isSharedVirtualDisk>
      <virtualDiskPath>String content</virtualDiskPath>
    </protectedFile>
  </internalIds>
  <lastExcludedFiles>
    <excludedFiles>
      <volumeName>
        <guidName>String content</guidName>
        <displayName>String content</displayName>
      </volumeName>
      <excludedFilesExtents>
        <excludedFilesExtent>
          <start>18446744073709551615</start>
          <length>18446744073709551615</length>
        </excludedFilesExtent>
        <excludedFilesExtent>
          <start>18446744073709551615</start>
          <length>18446744073709551615</length>
        </excludedFilesExtent>
      </excludedFilesExtents>
    </excludedFiles>
    <excludedFiles>
      <volumeName>
        <guidName>String content</guidName>
        <displayName>String content</displayName>
      </volumeName>
      <excludedFilesExtents>
        <excludedFilesExtent>
          <start>18446744073709551615</start>
          <length>18446744073709551615</length>
        </excludedFilesExtent>
        <excludedFilesExtent>
          <start>18446744073709551615</start>
          <length>18446744073709551615</length>
        </excludedFilesExtent>
      </excludedFilesExtents>
    </excludedFiles>
  </lastExcludedFiles>
  <sharedDiskOwners>
    <guid xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">1627aea5-8e0a-4371-9022-9b504344e724</guid>
    <guid xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">1627aea5-8e0a-4371-9022-9b504344e724</guid>
  </sharedDiskOwners>
  <sharedDiskPaths>
    <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">String content</string>
    <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">String content</string>
  </sharedDiskPaths>
  <virtualMachineId>1627aea5-8e0a-4371-9022-9b504344e724</virtualMachineId>
</takeSnapshotHyperVRequest>

The following is an example response XML body:

<?xml version="1.0" encoding="utf-16"?>
<takeSnapshotHyperVResponse xmlns="http://apprecovery.com/management/api/2010/05">
  <excludedWritersStatuses>
    <excludedWriterStatus>
      <excludedWriter>
        <_x003C_Id_x003E_k__BackingField xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer">1627aea5-8e0a-4371-9022-9b504344e724</_x003C_Id_x003E_k__BackingField>
        <_x003C_Name_x003E_k__BackingField xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer">String content</_x003C_Name_x003E_k__BackingField>
      </excludedWriter>
      <vssError>String content</vssError>
      <vssState>String content</vssState>
    </excludedWriterStatus>
    <excludedWriterStatus>
      <excludedWriter>
        <_x003C_Id_x003E_k__BackingField xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer">1627aea5-8e0a-4371-9022-9b504344e724</_x003C_Id_x003E_k__BackingField>
        <_x003C_Name_x003E_k__BackingField xmlns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer">String content</_x003C_Name_x003E_k__BackingField>
      </excludedWriter>
      <vssError>String content</vssError>
      <vssState>String content</vssState>
    </excludedWriterStatus>
  </excludedWritersStatuses>
  <id>
    <volumeSnapshot>
      <volume>
        <guidName>String content</guidName>
        <displayName>String content</displayName>
      </volume>
      <snapshotInfo>
        <blockDataUri>http://www.example.com/</blockDataUri>
        <blockHashesUri>http://www.example.com/</blockHashesUri>
      </snapshotInfo>
    </volumeSnapshot>
    <volumeSnapshot>
      <volume>
        <guidName>String content</guidName>
        <displayName>String content</displayName>
      </volume>
      <snapshotInfo>
        <blockDataUri>http://www.example.com/</blockDataUri>
        <blockHashesUri>http://www.example.com/</blockHashesUri>
      </snapshotInfo>
    </volumeSnapshot>
  </id>
  <snapshotSetId>1627aea5-8e0a-4371-9022-9b504344e724</snapshotSetId>
  <isConsistent>true</isConsistent>
  <warningException>
    <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>
  </warningException>
</takeSnapshotHyperVResponse>

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.microsoft.com/2003/10/Serialization/" />
    <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" />
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" />
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.ShadowCopy" />
    <xs:complexType name="takeSnapshotHyperVRequest">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:takeSnapshotRequest">
          <xs:sequence>
            <xs:element minOccurs="0" name="agentId" type="ser:guid" />
            <xs:element minOccurs="0" name="clusterAgentsIds" nillable="true" type="tns:clusterAgentIds" />
            <xs:element minOccurs="0" name="hyperVSnapshotConfiguration" type="tns:hyperVSnapshotConfiguration" />
            <xs:element minOccurs="0" name="internalIds" nillable="true" type="tns:volumeFiles" />
            <xs:element minOccurs="0" name="lastExcludedFiles" nillable="true" type="tns:excludedFilesCollection" />
            <xs:element minOccurs="0" name="sharedDiskOwners" nillable="true" xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q1:ArrayOfguid" />
            <xs:element minOccurs="0" name="sharedDiskPaths" nillable="true" xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q2:ArrayOfstring" />
            <xs:element minOccurs="0" name="virtualMachineId" type="ser:guid" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="takeSnapshotHyperVRequest" nillable="true" type="tns:takeSnapshotHyperVRequest" />
    <xs:complexType name="takeSnapshotRequest">
      <xs:sequence>
        <xs:element minOccurs="0" name="enableVerification" type="xs:boolean" />
        <xs:element minOccurs="0" name="excludedFilesSettings" nillable="true" type="tns:excludedFilesSettings" />
        <xs:element minOccurs="0" name="excludedVssWriterIds" nillable="true" xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q3:ArrayOfguid" />
        <xs:element minOccurs="0" name="excludedVssWriters" nillable="true" xmlns:q4="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" type="q4:ArrayOfExcludedWriter" />
        <xs:element minOccurs="0" name="id" type="ser:guid" />
        <xs:element minOccurs="0" name="key" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="latestEpochSeenByCore" type="xs:unsignedInt" />
        <xs:element minOccurs="0" name="logTruncationRequest" nillable="true" type="tns:logTruncationRequest" />
        <xs:element minOccurs="0" name="performCloudTransfer" type="xs:boolean" />
        <xs:element minOccurs="0" name="performDirectToTargetTransfer" type="xs:boolean" />
        <xs:element minOccurs="0" name="readTimeout" type="ser:duration" />
        <xs:element minOccurs="0" name="shadowCopyType" xmlns:q5="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.ShadowCopy" type="q5:ShadowCopyType" />
        <xs:element minOccurs="0" name="skipTargetComponents" nillable="true" xmlns:q6="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q6:ArrayOfKeyValueOfTargetComponentTypesstringCollectionIBaVneRM" />
        <xs:element minOccurs="0" name="transferDataReaderPort" type="xs:unsignedShort" />
        <xs:element minOccurs="0" name="transferEncryptionKey" nillable="true" xmlns:q7="http://schemas.microsoft.com/2003/10/Serialization/Arrays" type="q7:ArrayOfunsignedByte" />
        <xs:element minOccurs="0" name="transferTimeout" type="ser:duration" />
        <xs:element minOccurs="0" name="volumes" nillable="true" type="tns:volumeNames" />
        <xs:element minOccurs="0" name="vssProviderId" type="ser:guid" />
        <xs:element minOccurs="0" name="vssRetryCount" type="xs:unsignedInt" />
        <xs:element minOccurs="0" name="vssSecondsRetryDelay" type="xs:unsignedInt" />
        <xs:element minOccurs="0" name="writeTimeout" type="ser:duration" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="takeSnapshotRequest" nillable="true" type="tns:takeSnapshotRequest" />
    <xs:complexType name="excludedFilesSettings">
      <xs:sequence>
        <xs:element minOccurs="0" name="useDefaultSettings" type="xs:boolean" />
        <xs:element minOccurs="0" name="isExcludeDeletedBlocks" type="xs:boolean" />
        <xs:element minOccurs="0" name="isExcludeSwapFiles" type="xs:boolean" />
        <xs:element minOccurs="0" name="isExcludeSubdirectories" type="xs:boolean" />
        <xs:element minOccurs="0" name="excludedFilesAndFolders" nillable="true" type="tns:excludedFileAndFolderCollection" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFilesSettings" nillable="true" type="tns:excludedFilesSettings" />
    <xs:complexType name="excludedFileAndFolderCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="excludedFileAndFolder" nillable="true" type="tns:excludedFileAndFolder" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFileAndFolderCollection" nillable="true" type="tns:excludedFileAndFolderCollection" />
    <xs:complexType name="excludedFileAndFolder">
      <xs:sequence>
        <xs:element minOccurs="0" name="excludedFileAndFolderPath" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="volumeName" nillable="true" type="tns:volumeName" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFileAndFolder" nillable="true" type="tns:excludedFileAndFolder" />
    <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="logTruncationRequest">
      <xs:sequence>
        <xs:element minOccurs="0" name="existTargetComponents" xmlns:q8="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" type="q8:TargetComponentTypes" />
        <xs:element minOccurs="0" name="logTruncationTargets" xmlns:q9="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" type="q9:TargetComponentTypes" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="logTruncationRequest" nillable="true" type="tns:logTruncationRequest" />
    <xs:complexType name="stringCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="stringCollection" nillable="true" type="tns:stringCollection" />
    <xs:complexType name="volumeNames">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="volumeName" nillable="true" type="tns:volumeName" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="volumeNames" nillable="true" type="tns:volumeNames" />
    <xs:complexType name="clusterAgentIds">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="clusterAgentId" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="clusterAgentIds" nillable="true" type="tns:clusterAgentIds" />
    <xs:simpleType name="hyperVSnapshotConfiguration">
      <xs:restriction base="xs:string">
        <xs:enumeration value="tryCreateVssSnapshot" />
        <xs:enumeration value="disableVssSnapshot" />
        <xs:enumeration value="requireVssSnapshot" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="hyperVSnapshotConfiguration" nillable="true" type="tns:hyperVSnapshotConfiguration" />
    <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="excludedFilesCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="excludedFiles" nillable="true" type="tns:excludedFiles" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFilesCollection" nillable="true" type="tns:excludedFilesCollection" />
    <xs:complexType name="excludedFiles">
      <xs:sequence>
        <xs:element minOccurs="0" name="volumeName" nillable="true" type="tns:volumeName" />
        <xs:element minOccurs="0" name="excludedFilesExtents" nillable="true" type="tns:excludedFilesExtentCollection" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFiles" nillable="true" type="tns:excludedFiles" />
    <xs:complexType name="excludedFilesExtentCollection">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="excludedFilesExtent" nillable="true" type="tns:excludedFilesExtent" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFilesExtentCollection" nillable="true" type="tns:excludedFilesExtentCollection" />
    <xs:complexType name="excludedFilesExtent">
      <xs:sequence>
        <xs:element minOccurs="0" name="start" type="xs:unsignedLong" />
        <xs:element minOccurs="0" name="length" type="xs:unsignedLong" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedFilesExtent" nillable="true" type="tns:excludedFilesExtent" />
  </xs:schema>
  <xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/Arrays" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" />
    <xs:import namespace="http://apprecovery.com/management/api/2010/05" />
    <xs:complexType name="ArrayOfguid">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="guid" type="ser:guid" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ArrayOfguid" nillable="true" type="tns:ArrayOfguid" />
    <xs:complexType name="ArrayOfKeyValueOfTargetComponentTypesstringCollectionIBaVneRM">
      <xs:annotation>
        <xs:appinfo>
          <IsDictionary xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsDictionary>
        </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="KeyValueOfTargetComponentTypesstringCollectionIBaVneRM">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Key" xmlns:q1="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" type="q1:TargetComponentTypes" />
              <xs:element name="Value" nillable="true" xmlns:q2="http://apprecovery.com/management/api/2010/05" type="q2:stringCollection" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ArrayOfKeyValueOfTargetComponentTypesstringCollectionIBaVneRM" nillable="true" type="tns:ArrayOfKeyValueOfTargetComponentTypesstringCollectionIBaVneRM" />
    <xs:complexType name="ArrayOfunsignedByte">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="unsignedByte" type="xs:unsignedByte" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ArrayOfunsignedByte" nillable="true" type="tns:ArrayOfunsignedByte" />
    <xs:complexType name="ArrayOfstring">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ArrayOfstring" nillable="true" type="tns:ArrayOfstring" />
  </xs:schema>
  <xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    <xs:complexType name="ArrayOfExcludedWriter">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="ExcludedWriter" type="tns:ExcludedWriter" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ArrayOfExcludedWriter" nillable="true" type="tns:ArrayOfExcludedWriter" />
    <xs:complexType name="ExcludedWriter">
      <xs:annotation>
        <xs:appinfo>
          <IsValueType xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsValueType>
        </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
        <xs:element name="_x003C_Id_x003E_k__BackingField" type="ser:guid" />
        <xs:element name="_x003C_Name_x003E_k__BackingField" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ExcludedWriter" nillable="true" type="tns:ExcludedWriter" />
    <xs:simpleType name="TargetComponentTypes">
      <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="SqlServer">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">1</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="ExchangeServer">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">2</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
            <xs:enumeration value="All">
              <xs:annotation>
                <xs:appinfo>
                  <EnumerationValue xmlns="http://schemas.microsoft.com/2003/10/Serialization/">3</EnumerationValue>
                </xs:appinfo>
              </xs:annotation>
            </xs:enumeration>
          </xs:restriction>
        </xs:simpleType>
      </xs:list>
    </xs:simpleType>
    <xs:element name="TargetComponentTypes" nillable="true" type="tns:TargetComponentTypes" />
  </xs:schema>
  <xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.ShadowCopy" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.ShadowCopy" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:simpleType name="ShadowCopyType">
      <xs:restriction base="xs:string">
        <xs:enumeration value="Unknown" />
        <xs:enumeration value="Copy" />
        <xs:enumeration value="Full" />
      </xs:restriction>
    </xs:simpleType>
    <xs:element name="ShadowCopyType" nillable="true" type="tns:ShadowCopyType" />
  </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: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.microsoft.com/2003/10/Serialization/" />
    <xs:import namespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" />
    <xs:complexType name="takeSnapshotHyperVResponse">
      <xs:complexContent mixed="false">
        <xs:extension base="tns:takeSnapshotRequest">
          <xs:sequence>
            <xs:element minOccurs="0" name="isConsistent" type="xs:boolean" />
            <xs:element minOccurs="0" name="warningException" nillable="true" type="tns:serverError" />
          </xs:sequence>
        </xs:extension>
      </xs:complexContent>
    </xs:complexType>
    <xs:element name="takeSnapshotHyperVResponse" nillable="true" type="tns:takeSnapshotHyperVResponse" />
    <xs:complexType name="takeSnapshotRequest">
      <xs:sequence>
        <xs:element minOccurs="0" name="excludedWritersStatuses" nillable="true" type="tns:ArrayOfexcludedWriterStatus" />
        <xs:element minOccurs="0" name="id" nillable="true" type="tns:volumeSnapshots" />
        <xs:element minOccurs="0" name="snapshotSetId" type="ser:guid" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="takeSnapshotRequest" nillable="true" type="tns:takeSnapshotRequest" />
    <xs:complexType name="ArrayOfexcludedWriterStatus">
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="excludedWriterStatus" nillable="true" type="tns:excludedWriterStatus" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ArrayOfexcludedWriterStatus" nillable="true" type="tns:ArrayOfexcludedWriterStatus" />
    <xs:complexType name="excludedWriterStatus">
      <xs:sequence>
        <xs:element minOccurs="0" name="excludedWriter" xmlns:q1="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" type="q1:ExcludedWriter" />
        <xs:element minOccurs="0" name="vssError" nillable="true" type="xs:string" />
        <xs:element minOccurs="0" name="vssState" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="excludedWriterStatus" nillable="true" type="tns:excludedWriterStatus" />
    <xs:complexType name="volumeSnapshots">
      <xs:annotation>
        <xs:appinfo>
          <IsDictionary xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsDictionary>
        </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="volumeSnapshot">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="volume" nillable="true" type="tns:volumeName" />
              <xs:element name="snapshotInfo" nillable="true" type="tns:volumeSnapshotInfo" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
    <xs:element name="volumeSnapshots" nillable="true" type="tns:volumeSnapshots" />
    <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="volumeSnapshotInfo">
      <xs:sequence>
        <xs:element minOccurs="0" name="blockDataUri" nillable="true" type="xs:anyURI" />
        <xs:element minOccurs="0" name="blockHashesUri" nillable="true" type="xs:anyURI" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="volumeSnapshotInfo" nillable="true" type="tns:volumeSnapshotInfo" />
    <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:schema>
  <xs:schema xmlns:ser="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:tns="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Replay.Common.Contracts.Transfer" xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:import namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
    <xs:complexType name="ExcludedWriter">
      <xs:annotation>
        <xs:appinfo>
          <IsValueType xmlns="http://schemas.microsoft.com/2003/10/Serialization/">true</IsValueType>
        </xs:appinfo>
      </xs:annotation>
      <xs:sequence>
        <xs:element name="_x003C_Id_x003E_k__BackingField" type="ser:guid" />
        <xs:element name="_x003C_Name_x003E_k__BackingField" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
    <xs:element name="ExcludedWriter" nillable="true" type="tns:ExcludedWriter" />
  </xs:schema>
</Schemas>