tvpl.api

<back to all web services

AdvanceCreateDocument

Requires Authentication
The following routes are available for this service:
POST/document/advance-create
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BasicDocument:
    # @Required()
    title: Optional[str] = None

    # @StringLength(4000)
    description: Optional[str] = None

    # @StringLength(500)
    owner: Optional[str] = None

    document_policy_id: Optional[int] = None
    update_document_id: Optional[int] = None
    effect_begin_date: Optional[datetime.datetime] = None
    effect_end_date: Optional[datetime.datetime] = None
    issuing_agency_id: Optional[int] = None
    document_type_id: Optional[int] = None
    document_group_id: Optional[int] = None
    subject_id: Optional[int] = None
    # @StringLength(500)
    sign_by: Optional[str] = None

    sign_date: Optional[datetime.datetime] = None
    status_id: Optional[int] = None
    is_internal: bool = False
    document_number: Optional[str] = None
    document_code: Optional[str] = None
    is_urgent: Optional[bool] = None
    scope_type: Optional[int] = None
    is_active: Optional[bool] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DocumentSearchResultItem:
    title: Optional[str] = None
    description: Optional[str] = None
    owner: Optional[str] = None
    document_policy_id: Optional[int] = None
    update_document_id: Optional[int] = None
    effect_begin_date: Optional[datetime.datetime] = None
    effect_end_date: Optional[datetime.datetime] = None
    issuing_agency_id: Optional[int] = None
    subject_id: Optional[int] = None
    sign_by: Optional[str] = None
    sign_date: Optional[datetime.datetime] = None
    updated_at: Optional[datetime.datetime] = None
    status_id: Optional[int] = None
    is_internal: bool = False
    document_number: Optional[str] = None
    document_code: Optional[str] = None
    is_urgent: Optional[bool] = None
    id: int = 0
    reason_return: Optional[str] = None
    account_id: Optional[int] = None
    approver_id: Optional[int] = None
    # @StringLength(500)
    updated_by: Optional[str] = None

    # @StringLength(500)
    created_by: Optional[str] = None

    is_party: Optional[bool] = None
    is_revision_requested: Optional[bool] = None
    is_private: Optional[bool] = None
    department_id: Optional[int] = None
    publication_date: Optional[datetime.datetime] = None
    process_status_id: int = 0
    document_type_id: Optional[int] = None
    document_group_id: Optional[int] = None
    account_name: Optional[str] = None
    accept_account_name: Optional[str] = None
    document_group_text: Optional[str] = None
    process_status_text: Optional[str] = None
    document_type_text: Optional[str] = None
    department_text: Optional[str] = None
    status_text: Optional[str] = None
    issuing_agency_text: Optional[str] = None
    subject_text: Optional[str] = None
    comment: Optional[str] = None
    submit_comment: Optional[str] = None
    full_file: Optional[str] = None
    parth_file: Optional[str] = None
    is_active: Optional[bool] = None
    step_order: Optional[int] = None
    step_count: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class BasicUploadedFile:
    file_name: Optional[str] = None
    filekey: Optional[str] = None
    file_url: Optional[str] = None
    checksum: Optional[str] = None
    e_tag: Optional[str] = None
    file_size: int = 0


class AccessType(str, Enum):
    PUBLIC = 'Public'
    RESTRICTED = 'Restricted'


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UploadedFileModel(BasicUploadedFile):
    id: int = 0
    access_type: Optional[AccessType] = None
    created_by: int = 0
    created_date: datetime.datetime = datetime.datetime(1, 1, 1)


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UploadedFileAttach(UploadedFileModel):
    file_type: Optional[str] = None
    sub_document_id: Optional[int] = None
    step_id: Optional[int] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UserLogin:
    # @Required()
    name: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UserProfile(UserLogin):
    id: int = 0
    full_name: Optional[str] = None
    email: Optional[str] = None
    department_id: Optional[int] = None
    party_group_id: Optional[int] = None
    avatar: Optional[str] = None
    telephone: Optional[str] = None
    birthday: Optional[datetime.datetime] = None
    created_at: Optional[datetime.datetime] = None
    updated_at: Optional[datetime.datetime] = None
    failed_login_count: int = 0
    # @Ignore()
    roles: Optional[List[int]] = None

    last_login_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class ApproversProfile:
    user_profiles: Optional[List[UserProfile]] = None
    process_status_id: int = 0
    process_title: Optional[str] = None
    action_button_label: Optional[str] = None
    process_description: Optional[str] = None
    is_approval_required: bool = False
    is_final_step: bool = False
    step_order: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CurrentApprover:
    approver_id: Optional[int] = None
    status: Optional[str] = None
    process_status_id: int = 0
    process_title: Optional[str] = None
    action_button_label: Optional[str] = None
    process_description: Optional[str] = None
    is_approval_required: bool = False
    is_final_step: bool = False
    step_order: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SimpleDocumentRelation:
    id: int = 0
    title: Optional[str] = None
    document_code: Optional[str] = None
    publication_date: Optional[datetime.datetime] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DocumentDetail(DocumentSearchResultItem):
    part_uploaded_file: Optional[UploadedFileAttach] = None
    compact_uploaded_file: Optional[UploadedFileAttach] = None
    analysis_uploaded_file: Optional[UploadedFileAttach] = None
    full_uploaded_file: Optional[UploadedFileAttach] = None
    created_at: datetime.datetime = datetime.datetime(1, 1, 1)
    next_approver: Optional[ApproversProfile] = None
    current_approver: Optional[CurrentApprover] = None
    attach_files: Optional[List[UploadedFileAttach]] = None
    has_read_permission: bool = False
    can_grant_read_permission: bool = False
    basis_document: Optional[List[SimpleDocumentRelation]] = None
    basis_for_document: Optional[List[SimpleDocumentRelation]] = None
    main_document: Optional[SimpleDocumentRelation] = None
    reference_document: Optional[List[SimpleDocumentRelation]] = None
    referenced_by_document: Optional[List[SimpleDocumentRelation]] = None
    replaced_document: Optional[List[SimpleDocumentRelation]] = None
    replaced_by_document: Optional[List[SimpleDocumentRelation]] = None
    expired_document: Optional[List[SimpleDocumentRelation]] = None
    expired_by_document: Optional[List[SimpleDocumentRelation]] = None
    update_for_document: Optional[SimpleDocumentRelation] = None
    scope_type: Optional[int] = None
    step_order: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class DocumentDetailResponse(IResponseRequest):
    data: Optional[DocumentDetail] = None
    code: int = 0
    message: Optional[str] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class UploadedFiles(BasicUploadedFile):
    id: Optional[int] = None
    uploaded_file: Optional[str] = None
    sub_document_id: Optional[int] = None
    step_id: Optional[int] = None
    code: int = 0


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class AdvanceCreateDocument(BasicDocument):
    part_uploaded_file: Optional[UploadedFiles] = None
    compact_uploaded_file: Optional[UploadedFiles] = None
    analysis_uploaded_file: Optional[UploadedFiles] = None
    full_uploaded_file: Optional[UploadedFiles] = None
    attach_files: Optional[List[UploadedFiles]] = None
    basis_document_id: Optional[List[int]] = None
    reference_document_id: Optional[List[int]] = None
    replaced_document_id: Optional[List[int]] = None
    expired_document_id: Optional[List[int]] = None

Python AdvanceCreateDocument DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /document/advance-create HTTP/1.1 
Host: etc-api.vsmlab.vn 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<AdvanceCreateDocument xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/tvpl.api.ServiceModel">
  <Description xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Description>
  <DocumentCode xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</DocumentCode>
  <DocumentGroupId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</DocumentGroupId>
  <DocumentNumber xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</DocumentNumber>
  <DocumentPolicyId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</DocumentPolicyId>
  <DocumentTypeId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</DocumentTypeId>
  <EffectBeginDate xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0001-01-01T00:00:00</EffectBeginDate>
  <EffectEndDate xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0001-01-01T00:00:00</EffectEndDate>
  <IsActive xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">false</IsActive>
  <IsInternal xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">false</IsInternal>
  <IsUrgent xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">false</IsUrgent>
  <IssuingAgencyId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</IssuingAgencyId>
  <Owner xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Owner>
  <ScopeType xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</ScopeType>
  <SignBy xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</SignBy>
  <SignDate xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0001-01-01T00:00:00</SignDate>
  <StatusId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</StatusId>
  <SubjectId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</SubjectId>
  <Title xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Title>
  <UpdateDocumentId xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</UpdateDocumentId>
  <AnalysisUploadedFile>
    <Checksum xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Checksum>
    <ETag xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</ETag>
    <FileName xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileName>
    <FileSize xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</FileSize>
    <FileUrl xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileUrl>
    <Filekey xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Filekey>
    <Code>0</Code>
    <Id>0</Id>
    <StepId>0</StepId>
    <SubDocumentId>0</SubDocumentId>
    <UploadedFile>String</UploadedFile>
  </AnalysisUploadedFile>
  <AttachFiles>
    <UploadedFiles>
      <Checksum xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Checksum>
      <ETag xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</ETag>
      <FileName xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileName>
      <FileSize xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</FileSize>
      <FileUrl xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileUrl>
      <Filekey xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Filekey>
      <Code>0</Code>
      <Id>0</Id>
      <StepId>0</StepId>
      <SubDocumentId>0</SubDocumentId>
      <UploadedFile>String</UploadedFile>
    </UploadedFiles>
  </AttachFiles>
  <BasisDocumentId xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </BasisDocumentId>
  <CompactUploadedFile>
    <Checksum xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Checksum>
    <ETag xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</ETag>
    <FileName xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileName>
    <FileSize xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</FileSize>
    <FileUrl xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileUrl>
    <Filekey xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Filekey>
    <Code>0</Code>
    <Id>0</Id>
    <StepId>0</StepId>
    <SubDocumentId>0</SubDocumentId>
    <UploadedFile>String</UploadedFile>
  </CompactUploadedFile>
  <ExpiredDocumentId xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </ExpiredDocumentId>
  <FullUploadedFile>
    <Checksum xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Checksum>
    <ETag xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</ETag>
    <FileName xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileName>
    <FileSize xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</FileSize>
    <FileUrl xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileUrl>
    <Filekey xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Filekey>
    <Code>0</Code>
    <Id>0</Id>
    <StepId>0</StepId>
    <SubDocumentId>0</SubDocumentId>
    <UploadedFile>String</UploadedFile>
  </FullUploadedFile>
  <PartUploadedFile>
    <Checksum xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Checksum>
    <ETag xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</ETag>
    <FileName xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileName>
    <FileSize xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">0</FileSize>
    <FileUrl xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</FileUrl>
    <Filekey xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models">String</Filekey>
    <Code>0</Code>
    <Id>0</Id>
    <StepId>0</StepId>
    <SubDocumentId>0</SubDocumentId>
    <UploadedFile>String</UploadedFile>
  </PartUploadedFile>
  <ReferenceDocumentId xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </ReferenceDocumentId>
  <ReplacedDocumentId xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:int>0</d2p1:int>
  </ReplacedDocumentId>
</AdvanceCreateDocument>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<DocumentDetailResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/tvpl.api.ServiceModel">
  <Code>0</Code>
  <Data xmlns:d2p1="http://schemas.datacontract.org/2004/07/tvpl.data.Models">
    <d2p1:AcceptAccountName>String</d2p1:AcceptAccountName>
    <d2p1:AccountId>0</d2p1:AccountId>
    <d2p1:AccountName>String</d2p1:AccountName>
    <d2p1:ApproverId>0</d2p1:ApproverId>
    <d2p1:Comment>String</d2p1:Comment>
    <d2p1:CreatedBy>String</d2p1:CreatedBy>
    <d2p1:DepartmentId>0</d2p1:DepartmentId>
    <d2p1:DepartmentText>String</d2p1:DepartmentText>
    <d2p1:Description>String</d2p1:Description>
    <d2p1:DocumentCode>String</d2p1:DocumentCode>
    <d2p1:DocumentGroupId>0</d2p1:DocumentGroupId>
    <d2p1:DocumentGroupText>String</d2p1:DocumentGroupText>
    <d2p1:DocumentNumber>String</d2p1:DocumentNumber>
    <d2p1:DocumentPolicyId>0</d2p1:DocumentPolicyId>
    <d2p1:DocumentTypeId>0</d2p1:DocumentTypeId>
    <d2p1:DocumentTypeText>String</d2p1:DocumentTypeText>
    <d2p1:EffectBeginDate>0001-01-01T00:00:00</d2p1:EffectBeginDate>
    <d2p1:EffectEndDate>0001-01-01T00:00:00</d2p1:EffectEndDate>
    <d2p1:FullFile>String</d2p1:FullFile>
    <d2p1:Id>0</d2p1:Id>
    <d2p1:IsActive>false</d2p1:IsActive>
    <d2p1:IsInternal>false</d2p1:IsInternal>
    <d2p1:IsParty>false</d2p1:IsParty>
    <d2p1:IsPrivate>false</d2p1:IsPrivate>
    <d2p1:IsRevisionRequested>false</d2p1:IsRevisionRequested>
    <d2p1:IsUrgent>false</d2p1:IsUrgent>
    <d2p1:IssuingAgencyId>0</d2p1:IssuingAgencyId>
    <d2p1:IssuingAgencyText>String</d2p1:IssuingAgencyText>
    <d2p1:Owner>String</d2p1:Owner>
    <d2p1:ParthFile>String</d2p1:ParthFile>
    <d2p1:ProcessStatusId>0</d2p1:ProcessStatusId>
    <d2p1:ProcessStatusText>String</d2p1:ProcessStatusText>
    <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
    <d2p1:ReasonReturn>String</d2p1:ReasonReturn>
    <d2p1:SignBy>String</d2p1:SignBy>
    <d2p1:SignDate>0001-01-01T00:00:00</d2p1:SignDate>
    <d2p1:StatusId>0</d2p1:StatusId>
    <d2p1:StatusText>String</d2p1:StatusText>
    <d2p1:StepCount>0</d2p1:StepCount>
    <d2p1:StepOrder>0</d2p1:StepOrder>
    <d2p1:SubjectId>0</d2p1:SubjectId>
    <d2p1:SubjectText>String</d2p1:SubjectText>
    <d2p1:SubmitComment>String</d2p1:SubmitComment>
    <d2p1:Title>String</d2p1:Title>
    <d2p1:UpdateDocumentId>0</d2p1:UpdateDocumentId>
    <d2p1:UpdatedAt>0001-01-01T00:00:00</d2p1:UpdatedAt>
    <d2p1:UpdatedBy>String</d2p1:UpdatedBy>
    <d2p1:AnalysisUploadedFile>
      <d2p1:Checksum>String</d2p1:Checksum>
      <d2p1:ETag>String</d2p1:ETag>
      <d2p1:FileName>String</d2p1:FileName>
      <d2p1:FileSize>0</d2p1:FileSize>
      <d2p1:FileUrl>String</d2p1:FileUrl>
      <d2p1:Filekey>String</d2p1:Filekey>
      <d2p1:AccessType>Public</d2p1:AccessType>
      <d2p1:CreatedBy>0</d2p1:CreatedBy>
      <d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:FileType>String</d2p1:FileType>
      <d2p1:StepId>0</d2p1:StepId>
      <d2p1:SubDocumentId>0</d2p1:SubDocumentId>
    </d2p1:AnalysisUploadedFile>
    <d2p1:AttachFiles>
      <d2p1:UploadedFileAttach>
        <d2p1:Checksum>String</d2p1:Checksum>
        <d2p1:ETag>String</d2p1:ETag>
        <d2p1:FileName>String</d2p1:FileName>
        <d2p1:FileSize>0</d2p1:FileSize>
        <d2p1:FileUrl>String</d2p1:FileUrl>
        <d2p1:Filekey>String</d2p1:Filekey>
        <d2p1:AccessType>Public</d2p1:AccessType>
        <d2p1:CreatedBy>0</d2p1:CreatedBy>
        <d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:FileType>String</d2p1:FileType>
        <d2p1:StepId>0</d2p1:StepId>
        <d2p1:SubDocumentId>0</d2p1:SubDocumentId>
      </d2p1:UploadedFileAttach>
    </d2p1:AttachFiles>
    <d2p1:BasisDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:BasisDocument>
    <d2p1:BasisForDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:BasisForDocument>
    <d2p1:CanGrantReadPermission>false</d2p1:CanGrantReadPermission>
    <d2p1:CompactUploadedFile>
      <d2p1:Checksum>String</d2p1:Checksum>
      <d2p1:ETag>String</d2p1:ETag>
      <d2p1:FileName>String</d2p1:FileName>
      <d2p1:FileSize>0</d2p1:FileSize>
      <d2p1:FileUrl>String</d2p1:FileUrl>
      <d2p1:Filekey>String</d2p1:Filekey>
      <d2p1:AccessType>Public</d2p1:AccessType>
      <d2p1:CreatedBy>0</d2p1:CreatedBy>
      <d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:FileType>String</d2p1:FileType>
      <d2p1:StepId>0</d2p1:StepId>
      <d2p1:SubDocumentId>0</d2p1:SubDocumentId>
    </d2p1:CompactUploadedFile>
    <d2p1:CreatedAt>0001-01-01T00:00:00</d2p1:CreatedAt>
    <d2p1:CurrentApprover>
      <d2p1:ActionButtonLabel>String</d2p1:ActionButtonLabel>
      <d2p1:ApproverId>0</d2p1:ApproverId>
      <d2p1:IsApprovalRequired>false</d2p1:IsApprovalRequired>
      <d2p1:IsFinalStep>false</d2p1:IsFinalStep>
      <d2p1:ProcessDescription>String</d2p1:ProcessDescription>
      <d2p1:ProcessStatusId>0</d2p1:ProcessStatusId>
      <d2p1:ProcessTitle>String</d2p1:ProcessTitle>
      <d2p1:Status>String</d2p1:Status>
      <d2p1:StepOrder>0</d2p1:StepOrder>
    </d2p1:CurrentApprover>
    <d2p1:ExpiredByDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:ExpiredByDocument>
    <d2p1:ExpiredDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:ExpiredDocument>
    <d2p1:FullUploadedFile>
      <d2p1:Checksum>String</d2p1:Checksum>
      <d2p1:ETag>String</d2p1:ETag>
      <d2p1:FileName>String</d2p1:FileName>
      <d2p1:FileSize>0</d2p1:FileSize>
      <d2p1:FileUrl>String</d2p1:FileUrl>
      <d2p1:Filekey>String</d2p1:Filekey>
      <d2p1:AccessType>Public</d2p1:AccessType>
      <d2p1:CreatedBy>0</d2p1:CreatedBy>
      <d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:FileType>String</d2p1:FileType>
      <d2p1:StepId>0</d2p1:StepId>
      <d2p1:SubDocumentId>0</d2p1:SubDocumentId>
    </d2p1:FullUploadedFile>
    <d2p1:HasReadPermission>false</d2p1:HasReadPermission>
    <d2p1:MainDocument>
      <d2p1:DocumentCode>String</d2p1:DocumentCode>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
      <d2p1:Title>String</d2p1:Title>
      <d2p1:Type>String</d2p1:Type>
    </d2p1:MainDocument>
    <d2p1:NextApprover>
      <d2p1:ActionButtonLabel>String</d2p1:ActionButtonLabel>
      <d2p1:IsApprovalRequired>false</d2p1:IsApprovalRequired>
      <d2p1:IsFinalStep>false</d2p1:IsFinalStep>
      <d2p1:ProcessDescription>String</d2p1:ProcessDescription>
      <d2p1:ProcessStatusId>0</d2p1:ProcessStatusId>
      <d2p1:ProcessTitle>String</d2p1:ProcessTitle>
      <d2p1:StepOrder>0</d2p1:StepOrder>
      <d2p1:UserProfiles>
        <d2p1:UserProfile>
          <d2p1:Name>String</d2p1:Name>
          <d2p1:Password>String</d2p1:Password>
          <d2p1:Avatar>String</d2p1:Avatar>
          <d2p1:Birthday>0001-01-01T00:00:00</d2p1:Birthday>
          <d2p1:CreatedAt>0001-01-01T00:00:00</d2p1:CreatedAt>
          <d2p1:CreatedBy>String</d2p1:CreatedBy>
          <d2p1:DeletedAt>0001-01-01T00:00:00</d2p1:DeletedAt>
          <d2p1:DeletedBy>String</d2p1:DeletedBy>
          <d2p1:DepartmentId>0</d2p1:DepartmentId>
          <d2p1:Email>String</d2p1:Email>
          <d2p1:FailedLoginCount>0</d2p1:FailedLoginCount>
          <d2p1:FullName>String</d2p1:FullName>
          <d2p1:Id>0</d2p1:Id>
          <d2p1:IsDeleted>false</d2p1:IsDeleted>
          <d2p1:LastLoginDate>0001-01-01T00:00:00</d2p1:LastLoginDate>
          <d2p1:PartyGroupId>0</d2p1:PartyGroupId>
          <d2p1:Roles xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
            <d6p1:int>0</d6p1:int>
          </d2p1:Roles>
          <d2p1:Telephone>String</d2p1:Telephone>
          <d2p1:UpdatedAt>0001-01-01T00:00:00</d2p1:UpdatedAt>
          <d2p1:UpdatedBy>String</d2p1:UpdatedBy>
        </d2p1:UserProfile>
      </d2p1:UserProfiles>
    </d2p1:NextApprover>
    <d2p1:PartUploadedFile>
      <d2p1:Checksum>String</d2p1:Checksum>
      <d2p1:ETag>String</d2p1:ETag>
      <d2p1:FileName>String</d2p1:FileName>
      <d2p1:FileSize>0</d2p1:FileSize>
      <d2p1:FileUrl>String</d2p1:FileUrl>
      <d2p1:Filekey>String</d2p1:Filekey>
      <d2p1:AccessType>Public</d2p1:AccessType>
      <d2p1:CreatedBy>0</d2p1:CreatedBy>
      <d2p1:CreatedDate>0001-01-01T00:00:00</d2p1:CreatedDate>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:FileType>String</d2p1:FileType>
      <d2p1:StepId>0</d2p1:StepId>
      <d2p1:SubDocumentId>0</d2p1:SubDocumentId>
    </d2p1:PartUploadedFile>
    <d2p1:ReferenceDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:ReferenceDocument>
    <d2p1:ReferencedByDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:ReferencedByDocument>
    <d2p1:ReplacedByDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:ReplacedByDocument>
    <d2p1:ReplacedDocument>
      <d2p1:SimpleDocumentRelation>
        <d2p1:DocumentCode>String</d2p1:DocumentCode>
        <d2p1:Id>0</d2p1:Id>
        <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Type>String</d2p1:Type>
      </d2p1:SimpleDocumentRelation>
    </d2p1:ReplacedDocument>
    <d2p1:ScopeType>0</d2p1:ScopeType>
    <d2p1:StepOrder>0</d2p1:StepOrder>
    <d2p1:UpdateForDocument>
      <d2p1:DocumentCode>String</d2p1:DocumentCode>
      <d2p1:Id>0</d2p1:Id>
      <d2p1:PublicationDate>0001-01-01T00:00:00</d2p1:PublicationDate>
      <d2p1:Title>String</d2p1:Title>
      <d2p1:Type>String</d2p1:Type>
    </d2p1:UpdateForDocument>
  </Data>
  <Message>String</Message>
</DocumentDetailResponse>