import 'package:servicestack/servicestack.dart';
abstract class Outlook365Properties
{
String? PidTag;
String? ItemId;
String? EwsUrl;
String? Token;
Outlook365Properties({this.PidTag,this.ItemId,this.EwsUrl,this.Token});
Outlook365Properties.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
PidTag = json['PidTag'];
ItemId = json['ItemId'];
EwsUrl = json['EwsUrl'];
Token = json['Token'];
return this;
}
Map<String, dynamic> toJson() => {
'PidTag': PidTag,
'ItemId': ItemId,
'EwsUrl': EwsUrl,
'Token': Token
};
getTypeName() => "Outlook365Properties";
TypeContext? context = _ctx;
}
class RegistrationProfileFieldStateBase implements IConvertible
{
String? DocumentFieldID;
bool? Required;
bool? Visible;
bool? Readonly;
RegistrationProfileFieldStateBase({this.DocumentFieldID,this.Required,this.Visible,this.Readonly});
RegistrationProfileFieldStateBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DocumentFieldID = json['DocumentFieldID'];
Required = json['Required'];
Visible = json['Visible'];
Readonly = json['Readonly'];
return this;
}
Map<String, dynamic> toJson() => {
'DocumentFieldID': DocumentFieldID,
'Required': Required,
'Visible': Visible,
'Readonly': Readonly
};
getTypeName() => "RegistrationProfileFieldStateBase";
TypeContext? context = _ctx;
}
class CorporateIdentityMail implements IConvertible
{
String? DocumentId;
String? EmailHtml;
bool? IsRegistered;
String? DocumentNr;
List<RegistrationProfileFieldStateBase>? Values;
String? RegistrationProfileID;
bool? RegisterAutomatically;
CorporateIdentityMail({this.DocumentId,this.EmailHtml,this.IsRegistered,this.DocumentNr,this.Values,this.RegistrationProfileID,this.RegisterAutomatically});
CorporateIdentityMail.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DocumentId = json['DocumentId'];
EmailHtml = json['EmailHtml'];
IsRegistered = json['IsRegistered'];
DocumentNr = json['DocumentNr'];
Values = JsonConverters.fromJson(json['Values'],'List<RegistrationProfileFieldStateBase>',context!);
RegistrationProfileID = json['RegistrationProfileID'];
RegisterAutomatically = json['RegisterAutomatically'];
return this;
}
Map<String, dynamic> toJson() => {
'DocumentId': DocumentId,
'EmailHtml': EmailHtml,
'IsRegistered': IsRegistered,
'DocumentNr': DocumentNr,
'Values': JsonConverters.toJson(Values,'List<RegistrationProfileFieldStateBase>',context!),
'RegistrationProfileID': RegistrationProfileID,
'RegisterAutomatically': RegisterAutomatically
};
getTypeName() => "CorporateIdentityMail";
TypeContext? context = _ctx;
}
class RegistrationValue implements IConvertible
{
String? Key;
String? Value;
String? ShadowValue;
RegistrationValue({this.Key,this.Value,this.ShadowValue});
RegistrationValue.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Key = json['Key'];
Value = json['Value'];
ShadowValue = json['ShadowValue'];
return this;
}
Map<String, dynamic> toJson() => {
'Key': Key,
'Value': Value,
'ShadowValue': ShadowValue
};
getTypeName() => "RegistrationValue";
TypeContext? context = _ctx;
}
class Transition implements IConvertible
{
String? ID;
String? Reason;
DateTime? DelayDate;
String? DelayReason;
List<int>? UserIDs;
List<int>? GroupIDs;
Transition({this.ID,this.Reason,this.DelayDate,this.DelayReason,this.UserIDs,this.GroupIDs});
Transition.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Reason = json['Reason'];
DelayDate = JsonConverters.fromJson(json['DelayDate'],'DateTime',context!);
DelayReason = json['DelayReason'];
UserIDs = JsonConverters.fromJson(json['UserIDs'],'List<int>',context!);
GroupIDs = JsonConverters.fromJson(json['GroupIDs'],'List<int>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Reason': Reason,
'DelayDate': JsonConverters.toJson(DelayDate,'DateTime',context!),
'DelayReason': DelayReason,
'UserIDs': JsonConverters.toJson(UserIDs,'List<int>',context!),
'GroupIDs': JsonConverters.toJson(GroupIDs,'List<int>',context!)
};
getTypeName() => "Transition";
TypeContext? context = _ctx;
}
class Process implements IConvertible
{
int? ID;
String? Title;
String? Description;
String? Note;
String? Coordinator;
bool? Urgent;
List<Transition>? Transitions;
Process({this.ID,this.Title,this.Description,this.Note,this.Coordinator,this.Urgent,this.Transitions});
Process.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ID = json['ID'];
Title = json['Title'];
Description = json['Description'];
Note = json['Note'];
Coordinator = json['Coordinator'];
Urgent = json['Urgent'];
Transitions = JsonConverters.fromJson(json['Transitions'],'List<Transition>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ID': ID,
'Title': Title,
'Description': Description,
'Note': Note,
'Coordinator': Coordinator,
'Urgent': Urgent,
'Transitions': JsonConverters.toJson(Transitions,'List<Transition>',context!)
};
getTypeName() => "Process";
TypeContext? context = _ctx;
}
class CreateDraftCorporateIdentityMail extends Outlook365Properties implements IConvertible
{
String? RegistrationProfileID;
List<RegistrationValue>? Values;
List<Process>? Processes;
String? DocumentUploadId;
String? MessageQueueId;
String? ReplyEmailHtml;
CreateDraftCorporateIdentityMail({this.RegistrationProfileID,this.Values,this.Processes,this.DocumentUploadId,this.MessageQueueId,this.ReplyEmailHtml});
CreateDraftCorporateIdentityMail.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
RegistrationProfileID = json['RegistrationProfileID'];
Values = JsonConverters.fromJson(json['Values'],'List<RegistrationValue>',context!);
Processes = JsonConverters.fromJson(json['Processes'],'List<Process>',context!);
DocumentUploadId = json['DocumentUploadId'];
MessageQueueId = json['MessageQueueId'];
ReplyEmailHtml = json['ReplyEmailHtml'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'RegistrationProfileID': RegistrationProfileID,
'Values': JsonConverters.toJson(Values,'List<RegistrationValue>',context!),
'Processes': JsonConverters.toJson(Processes,'List<Process>',context!),
'DocumentUploadId': DocumentUploadId,
'MessageQueueId': MessageQueueId,
'ReplyEmailHtml': ReplyEmailHtml
});
getTypeName() => "CreateDraftCorporateIdentityMail";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'digiofficeapigateway.deltares.nl', types: <String, TypeInfo> {
'Outlook365Properties': TypeInfo(TypeOf.AbstractClass),
'RegistrationProfileFieldStateBase': TypeInfo(TypeOf.Class, create:() => RegistrationProfileFieldStateBase()),
'CorporateIdentityMail': TypeInfo(TypeOf.Class, create:() => CorporateIdentityMail()),
'List<RegistrationProfileFieldStateBase>': TypeInfo(TypeOf.Class, create:() => <RegistrationProfileFieldStateBase>[]),
'RegistrationValue': TypeInfo(TypeOf.Class, create:() => RegistrationValue()),
'Transition': TypeInfo(TypeOf.Class, create:() => Transition()),
'Process': TypeInfo(TypeOf.Class, create:() => Process()),
'List<Transition>': TypeInfo(TypeOf.Class, create:() => <Transition>[]),
'CreateDraftCorporateIdentityMail': TypeInfo(TypeOf.Class, create:() => CreateDraftCorporateIdentityMail()),
'List<RegistrationValue>': TypeInfo(TypeOf.Class, create:() => <RegistrationValue>[]),
'List<Process>': TypeInfo(TypeOf.Class, create:() => <Process>[]),
});
Dart CreateDraftCorporateIdentityMail DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /xml/reply/CreateDraftCorporateIdentityMail HTTP/1.1
Host: digiofficeapigateway.deltares.nl
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<CreateDraftCorporateIdentityMail xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Outlook.Operations">
<EwsUrl>String</EwsUrl>
<ItemId>String</ItemId>
<PidTag>String</PidTag>
<Token>String</Token>
<DocumentUploadId>String</DocumentUploadId>
<MessageQueueId>String</MessageQueueId>
<Processes xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Workflow">
<d2p1:Process>
<d2p1:Coordinator>String</d2p1:Coordinator>
<d2p1:Description>String</d2p1:Description>
<d2p1:ID>0</d2p1:ID>
<d2p1:Note>String</d2p1:Note>
<d2p1:Title>String</d2p1:Title>
<d2p1:Transitions>
<d2p1:Transition>
<d2p1:DelayDate>0001-01-01T00:00:00</d2p1:DelayDate>
<d2p1:DelayReason>String</d2p1:DelayReason>
<d2p1:GroupIDs xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d6p1:int>0</d6p1:int>
</d2p1:GroupIDs>
<d2p1:ID>00000000-0000-0000-0000-000000000000</d2p1:ID>
<d2p1:Reason>String</d2p1:Reason>
<d2p1:UserIDs xmlns:d6p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d6p1:int>0</d6p1:int>
</d2p1:UserIDs>
</d2p1:Transition>
</d2p1:Transitions>
<d2p1:Urgent>false</d2p1:Urgent>
</d2p1:Process>
</Processes>
<RegistrationProfileID>00000000-0000-0000-0000-000000000000</RegistrationProfileID>
<ReplyEmailHtml>String</ReplyEmailHtml>
<Values xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Registrationprofile">
<d2p1:RegistrationValue>
<d2p1:Key>00000000-0000-0000-0000-000000000000</d2p1:Key>
<d2p1:ShadowValue>String</d2p1:ShadowValue>
<d2p1:Value>String</d2p1:Value>
</d2p1:RegistrationValue>
</Values>
</CreateDraftCorporateIdentityMail>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <CorporateIdentityMail xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Outlook"> <DocumentId>00000000-0000-0000-0000-000000000000</DocumentId> <DocumentNr>String</DocumentNr> <EmailHtml>String</EmailHtml> <IsRegistered>false</IsRegistered> <RegisterAutomatically>false</RegisterAutomatically> <RegistrationProfileID>00000000-0000-0000-0000-000000000000</RegistrationProfileID> <Values xmlns:d2p1="http://schemas.datacontract.org/2004/07/IDB.API.DTO.Registrationprofile"> <d2p1:RegistrationProfileFieldStateBase> <d2p1:DocumentFieldID>00000000-0000-0000-0000-000000000000</d2p1:DocumentFieldID> <d2p1:Readonly>false</d2p1:Readonly> <d2p1:Required>false</d2p1:Required> <d2p1:Visible>false</d2p1:Visible> </d2p1:RegistrationProfileFieldStateBase> </Values> </CorporateIdentityMail>