DigiOffice Gateway Web Services

<back to all web services

CreateOrUpdateEmailDraft

Requires Authentication

export class Outlook365Properties
{
    public PidTag?: string;
    public ItemId?: string;
    public EwsUrl?: string;
    public Token?: string;

    public constructor(init?: Partial<Outlook365Properties>) { (Object as any).assign(this, init); }
}

export class RegistrationProfileFieldStateBase
{
    public DocumentFieldID?: string;
    public Required?: boolean;
    public Visible?: boolean;
    public Readonly?: boolean;

    public constructor(init?: Partial<RegistrationProfileFieldStateBase>) { (Object as any).assign(this, init); }
}

export class CorporateIdentityMail
{
    public DocumentId?: string;
    public EmailHtml?: string;
    public IsRegistered?: boolean;
    public DocumentNr?: string;
    public Values?: RegistrationProfileFieldStateBase[];
    public RegistrationProfileID?: string;
    public RegisterAutomatically?: boolean;

    public constructor(init?: Partial<CorporateIdentityMail>) { (Object as any).assign(this, init); }
}

export class RegistrationValue
{
    public Key?: string;
    public Value?: string;
    public ShadowValue?: string;

    public constructor(init?: Partial<RegistrationValue>) { (Object as any).assign(this, init); }
}

export class Transition
{
    public ID?: string;
    public Reason?: string;
    public DelayDate?: string;
    public DelayReason?: string;
    public UserIDs?: number[];
    public GroupIDs?: number[];

    public constructor(init?: Partial<Transition>) { (Object as any).assign(this, init); }
}

export class Process
{
    public ID?: number;
    public Title?: string;
    public Description?: string;
    public Note?: string;
    public Coordinator?: string;
    public Urgent?: boolean;
    public Transitions?: Transition[];

    public constructor(init?: Partial<Process>) { (Object as any).assign(this, init); }
}

export class CreateDraftCorporateIdentityMail extends Outlook365Properties
{
    public RegistrationProfileID?: string;
    public Values?: RegistrationValue[];
    public Processes?: Process[];
    public DocumentUploadId?: string;
    public MessageQueueId?: string;
    public ReplyEmailHtml?: string;

    public constructor(init?: Partial<CreateDraftCorporateIdentityMail>) { super(init); (Object as any).assign(this, init); }
}

export class CreateOrUpdateEmailDraft extends CreateDraftCorporateIdentityMail
{

    public constructor(init?: Partial<CreateOrUpdateEmailDraft>) { super(init); (Object as any).assign(this, init); }
}

TypeScript 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
}