DigiOffice Gateway Web Services

<back to all web services

AddUploadFile

Add a uploadfile with metadata.

Requires Authentication
The following routes are available for this service:
POST/api/DMS/AddUploadFile
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using IDB.API.DTO.Document.Operations;
using IDB.API.DMS;
using IDB.Diagnostics;
using IDB.Core.Diagnostics.Interfaces;
using IDB.Core.Diagnostics;

namespace IDB.API.DMS
{
    [DataContract]
    public partial class MetaDataField
    {
        [DataMember]
        public virtual Guid? ID { get; set; }

        [DataMember]
        public virtual Guid? DocumentVeldID { get; set; }

        [DataMember]
        public virtual string Name { get; set; }

        [DataMember]
        public virtual string Label { get; set; }

        [DataMember]
        public virtual string Datatype { get; set; }

        [DataMember]
        public virtual string PrintLabel { get; set; }

        [DataMember]
        public virtual string Entity { get; set; }

        [DataMember]
        public virtual string PrintValue { get; set; }

        [DataMember]
        public virtual string RegistrationValue { get; set; }

        [DataMember]
        public virtual string SPSiteColumnName { get; set; }

        [DataMember]
        public virtual string ShadowName { get; set; }

        [DataMember]
        public virtual string ShadowDatatype { get; set; }

        [DataMember]
        public virtual string ShadowSPSiteColumnName { get; set; }

        [DataMember]
        public virtual string ShadowSPSiteColumnRegistrationValue { get; set; }

        [DataMember]
        public virtual string ShadowRegistrationValue { get; set; }

        [DataMember]
        public virtual bool IsKeyField { get; set; }

        [DataMember]
        public virtual bool KopierenBijNieuweVersie { get; set; }
    }

}

namespace IDB.API.DTO.Document.Operations
{
    ///<summary>
    ///Add a uploadfile with metadata.
    ///</summary>
    [Api(Description="Add a uploadfile with metadata.")]
    public partial class AddUploadFile
    {
        ///<summary>
        ///Registration profile ID
        ///</summary>
        [ApiMember(Description="Registration profile ID", IsRequired=true)]
        public virtual Guid RegistrationProfileID { get; set; }

        ///<summary>
        ///Registration navigation path
        ///</summary>
        [ApiMember(Description="Registration navigation path")]
        public virtual string NavigationPath { get; set; }

        ///<summary>
        ///File name
        ///</summary>
        [ApiMember(Description="File name", IsRequired=true)]
        public virtual string FileName { get; set; }

        ///<summary>
        ///File date
        ///</summary>
        [ApiMember(Description="File date", IsRequired=true)]
        public virtual DateTime FileDate { get; set; }

        ///<summary>
        ///File content
        ///</summary>
        [ApiMember(Description="File content", IsRequired=true)]
        public virtual byte[] FileContent { get; set; } = [];

        ///<summary>
        ///File description
        ///</summary>
        [ApiMember(Description="File description", IsRequired=true)]
        public virtual string Description { get; set; }

        ///<summary>
        ///Keep document in uploads (false; register immediately)
        ///</summary>
        [ApiMember(Description="Keep document in uploads (false; register immediately)")]
        public virtual bool DocumentUpload { get; set; }

        ///<summary>
        ///Source of the file
        ///</summary>
        [ApiMember(Description="Source of the file")]
        public virtual string Source { get; set; }

        ///<summary>
        ///MetaDataFields
        ///</summary>
        [ApiMember(Description="MetaDataFields")]
        public virtual List<MetaDataField> MetaDataFields { get; set; }

        ///<summary>
        ///Document ID
        ///</summary>
        [ApiMember(Description="Document ID")]
        public virtual Guid? DocumentID { get; set; }

        ///<summary>
        ///Main Document ID
        ///</summary>
        [ApiMember(Description="Main Document ID")]
        public virtual Guid? MainDocumentID { get; set; }

        ///<summary>
        ///Sub Document IDs
        ///</summary>
        [ApiMember(Description="Sub Document IDs")]
        public virtual List<Guid> SubDocumentIDs { get; set; }
    }

    [DataContract]
    public partial class AddUploadFileResponse
    {
        [DataMember]
        public virtual Guid? DocumentId { get; set; }

        [DataMember]
        public virtual int? DocumentUploadId { get; set; }

        [DataMember]
        public virtual string DocumentNr { get; set; }

        [DataMember]
        public virtual InformationMessages Messages { get; set; }
    }

}

namespace IDB.Core.Diagnostics
{
    public enum MessageType
    {
        Information = 1,
        Warning = 2,
        Error = 3,
        Success = 4,
    }

}

namespace IDB.Core.Diagnostics.Interfaces
{
    public partial class InformationMessageBase
        : IInformationMessage
    {
        public virtual MessageType Type { get; set; }
        public virtual string Summary { get; set; }
        public virtual string FullMessage { get; set; }
        public virtual string FieldName { get; set; }
        public virtual bool KeepOpen { get; set; }
    }

}

namespace IDB.Diagnostics
{
    public partial class InformationMessages
        : List<InformationMessageBase>, IInformationMessages
    {
    }

}

C# AddUploadFile 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 /api/DMS/AddUploadFile HTTP/1.1 
Host: test-dogw.klokgroep.nl 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<AddUploadFile xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Document.Operations">
  <Description>String</Description>
  <DocumentID>00000000-0000-0000-0000-000000000000</DocumentID>
  <DocumentUpload>false</DocumentUpload>
  <FileContent>AA==</FileContent>
  <FileDate>0001-01-01T00:00:00</FileDate>
  <FileName>String</FileName>
  <MainDocumentID>00000000-0000-0000-0000-000000000000</MainDocumentID>
  <MetaDataFields xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.API.DMS">
    <d2p1:MetaDataField>
      <d2p1:Datatype>String</d2p1:Datatype>
      <d2p1:DocumentVeldID>00000000-0000-0000-0000-000000000000</d2p1:DocumentVeldID>
      <d2p1:Entity>String</d2p1:Entity>
      <d2p1:ID>00000000-0000-0000-0000-000000000000</d2p1:ID>
      <d2p1:IsKeyField>false</d2p1:IsKeyField>
      <d2p1:KopierenBijNieuweVersie>false</d2p1:KopierenBijNieuweVersie>
      <d2p1:Label>String</d2p1:Label>
      <d2p1:Name>String</d2p1:Name>
      <d2p1:PrintLabel>String</d2p1:PrintLabel>
      <d2p1:PrintValue>String</d2p1:PrintValue>
      <d2p1:RegistrationValue>String</d2p1:RegistrationValue>
      <d2p1:SPSiteColumnName>String</d2p1:SPSiteColumnName>
      <d2p1:ShadowDatatype>String</d2p1:ShadowDatatype>
      <d2p1:ShadowName>String</d2p1:ShadowName>
      <d2p1:ShadowRegistrationValue>String</d2p1:ShadowRegistrationValue>
      <d2p1:ShadowSPSiteColumnName>String</d2p1:ShadowSPSiteColumnName>
      <d2p1:ShadowSPSiteColumnRegistrationValue>String</d2p1:ShadowSPSiteColumnRegistrationValue>
    </d2p1:MetaDataField>
  </MetaDataFields>
  <NavigationPath>String</NavigationPath>
  <RegistrationProfileID>00000000-0000-0000-0000-000000000000</RegistrationProfileID>
  <Source>String</Source>
  <SubDocumentIDs xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:guid>00000000-0000-0000-0000-000000000000</d2p1:guid>
  </SubDocumentIDs>
</AddUploadFile>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<AddUploadFileResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Document.Operations">
  <DocumentId>00000000-0000-0000-0000-000000000000</DocumentId>
  <DocumentNr>String</DocumentNr>
  <DocumentUploadId>0</DocumentUploadId>
  <Messages xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.Core.Diagnostics.Interfaces">
    <d2p1:InformationMessageBase i:nil="true" />
  </Messages>
</AddUploadFileResponse>