DigiOffice Gateway Web Services

<back to all web services

CreateOrUpdateEmailDraft

Requires Authentication
using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using IDB.API.DTO.Outlook.Operations;
using IDB.API.DTO.Registrationprofile;
using IDB.API.DTO.Workflow;
using IDB.API.DTO.Outlook;

namespace IDB.API.DTO.Outlook
{
    public partial class CorporateIdentityMail
    {
        public CorporateIdentityMail()
        {
            Values = new List<RegistrationProfileFieldStateBase>{};
        }

        public virtual Guid DocumentId { get; set; }
        public virtual string EmailHtml { get; set; }
        public virtual bool IsRegistered { get; set; }
        public virtual string DocumentNr { get; set; }
        public virtual List<RegistrationProfileFieldStateBase> Values { get; set; }
        public virtual Guid RegistrationProfileID { get; set; }
        public virtual bool RegisterAutomatically { get; set; }
    }

}

namespace IDB.API.DTO.Outlook.Operations
{
    public partial class CreateDraftCorporateIdentityMail
        : Outlook365Properties
    {
        public CreateDraftCorporateIdentityMail()
        {
            Values = new List<RegistrationValue>{};
            Processes = new List<Process>{};
        }

        public virtual Guid RegistrationProfileID { get; set; }
        public virtual List<RegistrationValue> Values { get; set; }
        public virtual List<Process> Processes { get; set; }
        public virtual string DocumentUploadId { get; set; }
        public virtual string MessageQueueId { get; set; }
        public virtual string ReplyEmailHtml { get; set; }
    }

    public partial class CreateOrUpdateEmailDraft
        : CreateDraftCorporateIdentityMail
    {
    }

    public partial class Outlook365Properties
    {
        public virtual string PidTag { get; set; }
        public virtual string ItemId { get; set; }
        public virtual string EwsUrl { get; set; }
        public virtual string Token { get; set; }
    }

}

namespace IDB.API.DTO.Registrationprofile
{
    public partial class RegistrationProfileFieldStateBase
    {
        public virtual Guid DocumentFieldID { get; set; }
        public virtual bool Required { get; set; }
        public virtual bool Visible { get; set; }
        public virtual bool Readonly { get; set; }
    }

    public partial class RegistrationValue
    {
        public virtual Guid Key { get; set; }
        public virtual string Value { get; set; }
        public virtual string ShadowValue { get; set; }
    }

}

namespace IDB.API.DTO.Workflow
{
    public partial class Process
    {
        public Process()
        {
            Transitions = new List<Transition>{};
        }

        public virtual int ID { get; set; }
        public virtual string Title { get; set; }
        public virtual string Description { get; set; }
        public virtual string Note { get; set; }
        public virtual string Coordinator { get; set; }
        public virtual bool Urgent { get; set; }
        public virtual List<Transition> Transitions { get; set; }
    }

    public partial class Transition
    {
        public Transition()
        {
            UserIDs = new List<int>{};
            GroupIDs = new List<int>{};
        }

        public virtual Guid ID { get; set; }
        public virtual string Reason { get; set; }
        public virtual DateTime? DelayDate { get; set; }
        public virtual string DelayReason { get; set; }
        public virtual List<int> UserIDs { get; set; }
        public virtual List<int> GroupIDs { get; set; }
    }

}

C# CreateOrUpdateEmailDraft DTOs

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

HTTP + JSV

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

POST /jsv/reply/CreateOrUpdateEmailDraft HTTP/1.1 
Host: digiofficeapigateway.deltares.nl 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	Values: 
	[
		{
			Value: String,
			ShadowValue: String
		}
	],
	Processes: 
	[
		{
			ID: 0,
			Title: String,
			Description: String,
			Note: String,
			Coordinator: String,
			Urgent: False,
			Transitions: 
			[
				{
					Reason: String,
					DelayDate: 0001-01-01,
					DelayReason: String,
					UserIDs: 
					[
						0
					],
					GroupIDs: 
					[
						0
					]
				}
			]
		}
	],
	DocumentUploadId: String,
	MessageQueueId: String,
	ReplyEmailHtml: String,
	PidTag: String,
	ItemId: String,
	EwsUrl: String,
	Token: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	EmailHtml: String,
	IsRegistered: False,
	DocumentNr: String,
	Values: 
	[
		{
			Required: False,
			Visible: False,
			Readonly: False
		}
	],
	RegisterAutomatically: False
}