Reference for https://p21soa.ciot.com/formsandreporting/api/document/generate/form

Generate a form based on the given P21 Datastream data.

Url: https://p21soa.ciot.com/formsandreporting/api/document/generate/form

HTTP Method: POST

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

The following is an example request Xml body:

<GenerateForm>
  <CompressDocument>true</CompressDocument>
  <DocumentLinksRaw>String content</DocumentLinksRaw>
  <DocumentAssociations>
    <DocumentAssociation>
      <AssociationType>LinkedDocument</AssociationType>
      <DocumentId>String content</DocumentId>
      <Name>String content</Name>
      <Uri>String content</Uri>
    </DocumentAssociation>
    <DocumentAssociation>
      <AssociationType>LinkedDocument</AssociationType>
      <DocumentId>String content</DocumentId>
      <Name>String content</Name>
      <Uri>String content</Uri>
    </DocumentAssociation>
  </DocumentAssociations>
  <DocumentId>String content</DocumentId>
  <DocumentFormat>CrystalReport</DocumentFormat>
  <DocumentType>Unspecified</DocumentType>
  <RequestId>String content</RequestId>
  <ClientId>String content</ClientId>
  <PublishResponse>true</PublishResponse>
  <Batch>
    <BatchId>String content</BatchId>
    <BatchSequence>2147483647</BatchSequence>
  </Batch>
  <RenderingTarget>String content</RenderingTarget>
  <DatastreamXml>QmFzZSA2NCBTdHJlYW0=</DatastreamXml>
  <PublishPath>String content</PublishPath>
</GenerateForm>

The following is an example response Xml body:

<Document>
  <ClientId>String content</ClientId>
  <RequestId>String content</RequestId>
  <DocumentType>Unspecified</DocumentType>
  <DocumentId>String content</DocumentId>
  <DocumentFormat>CrystalReport</DocumentFormat>
  <DocumentName>String content</DocumentName>
  <FileName>String content</FileName>
  <DocumentContentType>String content</DocumentContentType>
  <DocumentData>QmFzZSA2NCBTdHJlYW0=</DocumentData>
  <ResponseStatus>
    <StatusCode>String content</StatusCode>
    <Message>String content</Message>
    <StackTrace>String content</StackTrace>
  </ResponseStatus>
  <Batch>
    <BatchId>String content</BatchId>
    <BatchSequence>2147483647</BatchSequence>
  </Batch>
  <DocumentAssociations>
    <DocumentAssociation>
      <AssociationType>LinkedDocument</AssociationType>
      <DocumentId>String content</DocumentId>
      <Name>String content</Name>
      <Uri>String content</Uri>
    </DocumentAssociation>
    <DocumentAssociation>
      <AssociationType>LinkedDocument</AssociationType>
      <DocumentId>String content</DocumentId>
      <Name>String content</Name>
      <Uri>String content</Uri>
    </DocumentAssociation>
  </DocumentAssociations>
</Document>

The following is the request Xml Schema:

<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="GenerateForm" nillable="true" type="GenerateForm" />
  <xs:complexType name="GenerateForm">
    <xs:complexContent mixed="false">
      <xs:extension base="GenerateDocumentBase">
        <xs:sequence>
          <xs:element minOccurs="0" maxOccurs="1" name="DatastreamXml" type="xs:base64Binary" />
          <xs:element minOccurs="0" maxOccurs="1" name="PublishPath" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:complexType name="GenerateDocumentBase" abstract="true">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="CompressDocument" type="xs:boolean" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentLinksRaw" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentAssociations" type="ArrayOfDocumentAssociation" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentId" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="DocumentFormat" type="DocumentFormat" />
      <xs:element minOccurs="1" maxOccurs="1" name="DocumentType" type="DocumentType" />
      <xs:element minOccurs="0" maxOccurs="1" name="RequestId" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="ClientId" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="PublishResponse" type="xs:boolean" />
      <xs:element minOccurs="0" maxOccurs="1" name="Batch" type="DocumentBatch" />
      <xs:element minOccurs="0" maxOccurs="1" name="RenderingTarget" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ArrayOfDocumentAssociation">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="DocumentAssociation" nillable="true" type="DocumentAssociation" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DocumentAssociation">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="AssociationType" type="DocumentAssociationType" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentId" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Name" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Uri" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="DocumentAssociationType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="LinkedDocument" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DocumentFormat">
    <xs:restriction base="xs:string">
      <xs:enumeration value="CrystalReport" />
      <xs:enumeration value="Word" />
      <xs:enumeration value="PDF" />
      <xs:enumeration value="Excel" />
      <xs:enumeration value="Xml" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DocumentType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Unspecified" />
      <xs:enumeration value="Form" />
      <xs:enumeration value="Report" />
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="DocumentBatch">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="BatchId" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="BatchSequence" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
</xs:schema>

The following is the response Xml Schema:

<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="Document" nillable="true" type="Document" />
  <xs:complexType name="Document">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="ClientId" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="RequestId" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="DocumentType" type="DocumentType" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentId" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="DocumentFormat" type="DocumentFormat" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="FileName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentContentType" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentData" type="xs:base64Binary" />
      <xs:element minOccurs="0" maxOccurs="1" name="ResponseStatus" type="ResponseStatus" />
      <xs:element minOccurs="0" maxOccurs="1" name="Batch" type="DocumentBatch" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentAssociations" type="ArrayOfDocumentAssociation" />
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="DocumentType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Unspecified" />
      <xs:enumeration value="Form" />
      <xs:enumeration value="Report" />
    </xs:restriction>
  </xs:simpleType>
  <xs:simpleType name="DocumentFormat">
    <xs:restriction base="xs:string">
      <xs:enumeration value="CrystalReport" />
      <xs:enumeration value="Word" />
      <xs:enumeration value="PDF" />
      <xs:enumeration value="Excel" />
      <xs:enumeration value="Xml" />
    </xs:restriction>
  </xs:simpleType>
  <xs:complexType name="ResponseStatus">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="StatusCode" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Message" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="StackTrace" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DocumentBatch">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="1" name="BatchId" type="xs:string" />
      <xs:element minOccurs="1" maxOccurs="1" name="BatchSequence" type="xs:int" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ArrayOfDocumentAssociation">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="DocumentAssociation" nillable="true" type="DocumentAssociation" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DocumentAssociation">
    <xs:sequence>
      <xs:element minOccurs="1" maxOccurs="1" name="AssociationType" type="DocumentAssociationType" />
      <xs:element minOccurs="0" maxOccurs="1" name="DocumentId" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Name" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="1" name="Uri" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:simpleType name="DocumentAssociationType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="LinkedDocument" />
    </xs:restriction>
  </xs:simpleType>
</xs:schema>