| POST,OPTIONS | /v1/dispatch/track/{Token}/units |
|---|
import 'package:servicestack/servicestack.dart';
abstract class CourierTrackActRequest
{
String? Token;
String? ActToken;
CourierTrackActRequest({this.Token,this.ActToken});
CourierTrackActRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Token = json['Token'];
ActToken = json['ActToken'];
return this;
}
Map<String, dynamic> toJson() => {
'Token': Token,
'ActToken': ActToken
};
getTypeName() => "CourierTrackActRequest";
TypeContext? context = _ctx;
}
class DispatchTrackStepView implements IConvertible
{
String? Name;
DateTime? At;
bool? Done;
bool? Current;
DispatchTrackStepView({this.Name,this.At,this.Done,this.Current});
DispatchTrackStepView.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
At = JsonConverters.fromJson(json['At'],'DateTime',context!);
Done = json['Done'];
Current = json['Current'];
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'At': JsonConverters.toJson(At,'DateTime',context!),
'Done': Done,
'Current': Current
};
getTypeName() => "DispatchTrackStepView";
TypeContext? context = _ctx;
}
class CourierTrackBusiness implements IConvertible
{
String? Name;
String? Phone;
CourierTrackBusiness({this.Name,this.Phone});
CourierTrackBusiness.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Phone = json['Phone'];
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Phone': Phone
};
getTypeName() => "CourierTrackBusiness";
TypeContext? context = _ctx;
}
class CourierTrackDriver implements IConvertible
{
String? FirstName;
String? Initial;
String? Vehicle;
String? Plate;
int? EtaMin;
int? EtaPct;
CourierTrackDriver({this.FirstName,this.Initial,this.Vehicle,this.Plate,this.EtaMin,this.EtaPct});
CourierTrackDriver.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
FirstName = json['FirstName'];
Initial = json['Initial'];
Vehicle = json['Vehicle'];
Plate = json['Plate'];
EtaMin = json['EtaMin'];
EtaPct = json['EtaPct'];
return this;
}
Map<String, dynamic> toJson() => {
'FirstName': FirstName,
'Initial': Initial,
'Vehicle': Vehicle,
'Plate': Plate,
'EtaMin': EtaMin,
'EtaPct': EtaPct
};
getTypeName() => "CourierTrackDriver";
TypeContext? context = _ctx;
}
class CourierTrackProof implements IConvertible
{
String? Kind;
String? PhotoUrl;
String? AtText;
bool? GpsOk;
int? Units;
String? DamageNote;
String? DeliveredTo;
int? WaitedMin;
int? Attempts;
String? ContactedText;
bool? EachTagged;
bool? EachScanned;
CourierTrackProof({this.Kind,this.PhotoUrl,this.AtText,this.GpsOk,this.Units,this.DamageNote,this.DeliveredTo,this.WaitedMin,this.Attempts,this.ContactedText,this.EachTagged,this.EachScanned});
CourierTrackProof.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Kind = json['Kind'];
PhotoUrl = json['PhotoUrl'];
AtText = json['AtText'];
GpsOk = json['GpsOk'];
Units = json['Units'];
DamageNote = json['DamageNote'];
DeliveredTo = json['DeliveredTo'];
WaitedMin = json['WaitedMin'];
Attempts = json['Attempts'];
ContactedText = json['ContactedText'];
EachTagged = json['EachTagged'];
EachScanned = json['EachScanned'];
return this;
}
Map<String, dynamic> toJson() => {
'Kind': Kind,
'PhotoUrl': PhotoUrl,
'AtText': AtText,
'GpsOk': GpsOk,
'Units': Units,
'DamageNote': DamageNote,
'DeliveredTo': DeliveredTo,
'WaitedMin': WaitedMin,
'Attempts': Attempts,
'ContactedText': ContactedText,
'EachTagged': EachTagged,
'EachScanned': EachScanned
};
getTypeName() => "CourierTrackProof";
TypeContext? context = _ctx;
}
class CourierTrackRating implements IConvertible
{
int? Stars;
String? Tags;
double? Tip;
String? TipStatus;
CourierTrackRating({this.Stars,this.Tags,this.Tip,this.TipStatus});
CourierTrackRating.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Stars = json['Stars'];
Tags = json['Tags'];
Tip = JsonConverters.toDouble(json['Tip']);
TipStatus = json['TipStatus'];
return this;
}
Map<String, dynamic> toJson() => {
'Stars': Stars,
'Tags': Tags,
'Tip': Tip,
'TipStatus': TipStatus
};
getTypeName() => "CourierTrackRating";
TypeContext? context = _ctx;
}
class CourierTrackSlot implements IConvertible
{
String? Id;
String? Day;
String? DayEs;
String? Win;
CourierTrackSlot({this.Id,this.Day,this.DayEs,this.Win});
CourierTrackSlot.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Day = json['Day'];
DayEs = json['DayEs'];
Win = json['Win'];
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Day': Day,
'DayEs': DayEs,
'Win': Win
};
getTypeName() => "CourierTrackSlot";
TypeContext? context = _ctx;
}
class CourierTrackMissed implements IConvertible
{
String? Code;
double? Fee;
int? WaitedMin;
bool? AutoRebook;
String? RebookWindowText;
List<CourierTrackSlot>? Slots = [];
CourierTrackMissed({this.Code,this.Fee,this.WaitedMin,this.AutoRebook,this.RebookWindowText,this.Slots});
CourierTrackMissed.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Code = json['Code'];
Fee = JsonConverters.toDouble(json['Fee']);
WaitedMin = json['WaitedMin'];
AutoRebook = json['AutoRebook'];
RebookWindowText = json['RebookWindowText'];
Slots = JsonConverters.fromJson(json['Slots'],'List<CourierTrackSlot>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Code': Code,
'Fee': Fee,
'WaitedMin': WaitedMin,
'AutoRebook': AutoRebook,
'RebookWindowText': RebookWindowText,
'Slots': JsonConverters.toJson(Slots,'List<CourierTrackSlot>',context!)
};
getTypeName() => "CourierTrackMissed";
TypeContext? context = _ctx;
}
class CourierTrackCan implements IConvertible
{
bool? EditInstructions;
bool? ChangeUnits;
bool? Cancel;
bool? RescheduleDelivery;
bool? Rebook;
bool? Rate;
bool? Message;
bool? Report;
int? MaxUnits;
CourierTrackCan({this.EditInstructions,this.ChangeUnits,this.Cancel,this.RescheduleDelivery,this.Rebook,this.Rate,this.Message,this.Report,this.MaxUnits});
CourierTrackCan.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
EditInstructions = json['EditInstructions'];
ChangeUnits = json['ChangeUnits'];
Cancel = json['Cancel'];
RescheduleDelivery = json['RescheduleDelivery'];
Rebook = json['Rebook'];
Rate = json['Rate'];
Message = json['Message'];
Report = json['Report'];
MaxUnits = json['MaxUnits'];
return this;
}
Map<String, dynamic> toJson() => {
'EditInstructions': EditInstructions,
'ChangeUnits': ChangeUnits,
'Cancel': Cancel,
'RescheduleDelivery': RescheduleDelivery,
'Rebook': Rebook,
'Rate': Rate,
'Message': Message,
'Report': Report,
'MaxUnits': MaxUnits
};
getTypeName() => "CourierTrackCan";
TypeContext? context = _ctx;
}
class CourierTrackMessage implements IConvertible
{
String? Who;
bool? Mine;
bool? Office;
String? AtText;
String? Body;
CourierTrackMessage({this.Who,this.Mine,this.Office,this.AtText,this.Body});
CourierTrackMessage.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Who = json['Who'];
Mine = json['Mine'];
Office = json['Office'];
AtText = json['AtText'];
Body = json['Body'];
return this;
}
Map<String, dynamic> toJson() => {
'Who': Who,
'Mine': Mine,
'Office': Office,
'AtText': AtText,
'Body': Body
};
getTypeName() => "CourierTrackMessage";
TypeContext? context = _ctx;
}
class CourierTrackView implements IConvertible
{
String? State;
String? Code;
String? RunCode;
String? Shape;
String? Template;
String? CourierStep;
String? UnitOne;
String? UnitMany;
String? UnitOneEs;
String? UnitManyEs;
String? FacilityNoun;
String? FacilityNounEs;
int? Units;
bool? UnitsCounted;
String? Address;
String? DropoffAddress;
String? DropoffName;
String? Instructions;
String? GateCode;
String? Handoff;
String? LevelName;
String? ReadyPromise;
String? WindowText;
bool? IsAsap;
Map<String,String?>? Times = {};
int? StopPosition;
int? StopCount;
String? DeliveryWindowText;
CourierTrackDriver? Driver;
CourierTrackProof? Proof;
String? HandoffCode;
CourierTrackRating? Rating;
bool? TipAllowed;
double? TipsPct;
CourierTrackMissed? Missed;
double? CancelFee;
double? CancelFeeCharged;
String? CancelledBy;
String? BookUrl;
CourierTrackCan? Can;
List<CourierTrackSlot>? DeliverySlots = [];
List<CourierTrackMessage>? Messages = [];
bool? MessagesOpen;
String? CaseCode;
String? CaseStatus;
String? CaseReply;
int? ThreadHrs;
DateTime? ExpiresUtc;
bool? LiveEta;
bool? Live;
DateTime? ServerUtc;
CourierTrackView({this.State,this.Code,this.RunCode,this.Shape,this.Template,this.CourierStep,this.UnitOne,this.UnitMany,this.UnitOneEs,this.UnitManyEs,this.FacilityNoun,this.FacilityNounEs,this.Units,this.UnitsCounted,this.Address,this.DropoffAddress,this.DropoffName,this.Instructions,this.GateCode,this.Handoff,this.LevelName,this.ReadyPromise,this.WindowText,this.IsAsap,this.Times,this.StopPosition,this.StopCount,this.DeliveryWindowText,this.Driver,this.Proof,this.HandoffCode,this.Rating,this.TipAllowed,this.TipsPct,this.Missed,this.CancelFee,this.CancelFeeCharged,this.CancelledBy,this.BookUrl,this.Can,this.DeliverySlots,this.Messages,this.MessagesOpen,this.CaseCode,this.CaseStatus,this.CaseReply,this.ThreadHrs,this.ExpiresUtc,this.LiveEta,this.Live,this.ServerUtc});
CourierTrackView.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
State = json['State'];
Code = json['Code'];
RunCode = json['RunCode'];
Shape = json['Shape'];
Template = json['Template'];
CourierStep = json['CourierStep'];
UnitOne = json['UnitOne'];
UnitMany = json['UnitMany'];
UnitOneEs = json['UnitOneEs'];
UnitManyEs = json['UnitManyEs'];
FacilityNoun = json['FacilityNoun'];
FacilityNounEs = json['FacilityNounEs'];
Units = json['Units'];
UnitsCounted = json['UnitsCounted'];
Address = json['Address'];
DropoffAddress = json['DropoffAddress'];
DropoffName = json['DropoffName'];
Instructions = json['Instructions'];
GateCode = json['GateCode'];
Handoff = json['Handoff'];
LevelName = json['LevelName'];
ReadyPromise = json['ReadyPromise'];
WindowText = json['WindowText'];
IsAsap = json['IsAsap'];
Times = JsonConverters.toStringMap(json['Times']);
StopPosition = json['StopPosition'];
StopCount = json['StopCount'];
DeliveryWindowText = json['DeliveryWindowText'];
Driver = JsonConverters.fromJson(json['Driver'],'CourierTrackDriver',context!);
Proof = JsonConverters.fromJson(json['Proof'],'CourierTrackProof',context!);
HandoffCode = json['HandoffCode'];
Rating = JsonConverters.fromJson(json['Rating'],'CourierTrackRating',context!);
TipAllowed = json['TipAllowed'];
TipsPct = JsonConverters.toDouble(json['TipsPct']);
Missed = JsonConverters.fromJson(json['Missed'],'CourierTrackMissed',context!);
CancelFee = JsonConverters.toDouble(json['CancelFee']);
CancelFeeCharged = JsonConverters.toDouble(json['CancelFeeCharged']);
CancelledBy = json['CancelledBy'];
BookUrl = json['BookUrl'];
Can = JsonConverters.fromJson(json['Can'],'CourierTrackCan',context!);
DeliverySlots = JsonConverters.fromJson(json['DeliverySlots'],'List<CourierTrackSlot>',context!);
Messages = JsonConverters.fromJson(json['Messages'],'List<CourierTrackMessage>',context!);
MessagesOpen = json['MessagesOpen'];
CaseCode = json['CaseCode'];
CaseStatus = json['CaseStatus'];
CaseReply = json['CaseReply'];
ThreadHrs = json['ThreadHrs'];
ExpiresUtc = JsonConverters.fromJson(json['ExpiresUtc'],'DateTime',context!);
LiveEta = json['LiveEta'];
Live = json['Live'];
ServerUtc = JsonConverters.fromJson(json['ServerUtc'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'State': State,
'Code': Code,
'RunCode': RunCode,
'Shape': Shape,
'Template': Template,
'CourierStep': CourierStep,
'UnitOne': UnitOne,
'UnitMany': UnitMany,
'UnitOneEs': UnitOneEs,
'UnitManyEs': UnitManyEs,
'FacilityNoun': FacilityNoun,
'FacilityNounEs': FacilityNounEs,
'Units': Units,
'UnitsCounted': UnitsCounted,
'Address': Address,
'DropoffAddress': DropoffAddress,
'DropoffName': DropoffName,
'Instructions': Instructions,
'GateCode': GateCode,
'Handoff': Handoff,
'LevelName': LevelName,
'ReadyPromise': ReadyPromise,
'WindowText': WindowText,
'IsAsap': IsAsap,
'Times': Times,
'StopPosition': StopPosition,
'StopCount': StopCount,
'DeliveryWindowText': DeliveryWindowText,
'Driver': JsonConverters.toJson(Driver,'CourierTrackDriver',context!),
'Proof': JsonConverters.toJson(Proof,'CourierTrackProof',context!),
'HandoffCode': HandoffCode,
'Rating': JsonConverters.toJson(Rating,'CourierTrackRating',context!),
'TipAllowed': TipAllowed,
'TipsPct': TipsPct,
'Missed': JsonConverters.toJson(Missed,'CourierTrackMissed',context!),
'CancelFee': CancelFee,
'CancelFeeCharged': CancelFeeCharged,
'CancelledBy': CancelledBy,
'BookUrl': BookUrl,
'Can': JsonConverters.toJson(Can,'CourierTrackCan',context!),
'DeliverySlots': JsonConverters.toJson(DeliverySlots,'List<CourierTrackSlot>',context!),
'Messages': JsonConverters.toJson(Messages,'List<CourierTrackMessage>',context!),
'MessagesOpen': MessagesOpen,
'CaseCode': CaseCode,
'CaseStatus': CaseStatus,
'CaseReply': CaseReply,
'ThreadHrs': ThreadHrs,
'ExpiresUtc': JsonConverters.toJson(ExpiresUtc,'DateTime',context!),
'LiveEta': LiveEta,
'Live': Live,
'ServerUtc': JsonConverters.toJson(ServerUtc,'DateTime',context!)
};
getTypeName() => "CourierTrackView";
TypeContext? context = _ctx;
}
class DispatchTrackResponse implements IConvertible
{
String? Kind;
String? Code;
String? What;
String? FromLoc;
String? ToLoc;
int? Bags;
double? Fare;
String? PayMode;
String? CardLast4;
bool? Charged;
String? Stage;
String? Headline;
String? Sub;
bool? IsClosed;
String? Eta;
String? DriverName;
String? CustomerName;
List<DispatchTrackStepView>? Steps = [];
bool? Expired;
bool? Invalid;
CourierTrackBusiness? Business;
CourierTrackView? Courier;
String? Notice;
ResponseStatus? ResponseStatus;
DispatchTrackResponse({this.Kind,this.Code,this.What,this.FromLoc,this.ToLoc,this.Bags,this.Fare,this.PayMode,this.CardLast4,this.Charged,this.Stage,this.Headline,this.Sub,this.IsClosed,this.Eta,this.DriverName,this.CustomerName,this.Steps,this.Expired,this.Invalid,this.Business,this.Courier,this.Notice,this.ResponseStatus});
DispatchTrackResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Kind = json['Kind'];
Code = json['Code'];
What = json['What'];
FromLoc = json['FromLoc'];
ToLoc = json['ToLoc'];
Bags = json['Bags'];
Fare = JsonConverters.toDouble(json['Fare']);
PayMode = json['PayMode'];
CardLast4 = json['CardLast4'];
Charged = json['Charged'];
Stage = json['Stage'];
Headline = json['Headline'];
Sub = json['Sub'];
IsClosed = json['IsClosed'];
Eta = json['Eta'];
DriverName = json['DriverName'];
CustomerName = json['CustomerName'];
Steps = JsonConverters.fromJson(json['Steps'],'List<DispatchTrackStepView>',context!);
Expired = json['Expired'];
Invalid = json['Invalid'];
Business = JsonConverters.fromJson(json['Business'],'CourierTrackBusiness',context!);
Courier = JsonConverters.fromJson(json['Courier'],'CourierTrackView',context!);
Notice = json['Notice'];
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Kind': Kind,
'Code': Code,
'What': What,
'FromLoc': FromLoc,
'ToLoc': ToLoc,
'Bags': Bags,
'Fare': Fare,
'PayMode': PayMode,
'CardLast4': CardLast4,
'Charged': Charged,
'Stage': Stage,
'Headline': Headline,
'Sub': Sub,
'IsClosed': IsClosed,
'Eta': Eta,
'DriverName': DriverName,
'CustomerName': CustomerName,
'Steps': JsonConverters.toJson(Steps,'List<DispatchTrackStepView>',context!),
'Expired': Expired,
'Invalid': Invalid,
'Business': JsonConverters.toJson(Business,'CourierTrackBusiness',context!),
'Courier': JsonConverters.toJson(Courier,'CourierTrackView',context!),
'Notice': Notice,
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!)
};
getTypeName() => "DispatchTrackResponse";
TypeContext? context = _ctx;
}
class CourierTrackUnitsRequest extends CourierTrackActRequest implements IConvertible
{
int? Count;
CourierTrackUnitsRequest({this.Count});
CourierTrackUnitsRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
Count = json['Count'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'Count': Count
});
getTypeName() => "CourierTrackUnitsRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'CourierTrackActRequest': TypeInfo(TypeOf.AbstractClass),
'DispatchTrackStepView': TypeInfo(TypeOf.Class, create:() => DispatchTrackStepView()),
'CourierTrackBusiness': TypeInfo(TypeOf.Class, create:() => CourierTrackBusiness()),
'CourierTrackDriver': TypeInfo(TypeOf.Class, create:() => CourierTrackDriver()),
'CourierTrackProof': TypeInfo(TypeOf.Class, create:() => CourierTrackProof()),
'CourierTrackRating': TypeInfo(TypeOf.Class, create:() => CourierTrackRating()),
'CourierTrackSlot': TypeInfo(TypeOf.Class, create:() => CourierTrackSlot()),
'CourierTrackMissed': TypeInfo(TypeOf.Class, create:() => CourierTrackMissed()),
'List<CourierTrackSlot>': TypeInfo(TypeOf.Class, create:() => <CourierTrackSlot>[]),
'CourierTrackCan': TypeInfo(TypeOf.Class, create:() => CourierTrackCan()),
'CourierTrackMessage': TypeInfo(TypeOf.Class, create:() => CourierTrackMessage()),
'CourierTrackView': TypeInfo(TypeOf.Class, create:() => CourierTrackView()),
'List<CourierTrackMessage>': TypeInfo(TypeOf.Class, create:() => <CourierTrackMessage>[]),
'DispatchTrackResponse': TypeInfo(TypeOf.Class, create:() => DispatchTrackResponse()),
'List<DispatchTrackStepView>': TypeInfo(TypeOf.Class, create:() => <DispatchTrackStepView>[]),
'CourierTrackUnitsRequest': TypeInfo(TypeOf.Class, create:() => CourierTrackUnitsRequest()),
});
Dart CourierTrackUnitsRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /v1/dispatch/track/{Token}/units HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
Count: 0,
Token: String,
ActToken: String
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length
{
Kind: String,
Code: String,
What: String,
FromLoc: String,
ToLoc: String,
Bags: 0,
Fare: 0,
PayMode: String,
CardLast4: String,
Charged: False,
Stage: String,
Headline: String,
Sub: String,
IsClosed: False,
Eta: String,
DriverName: String,
CustomerName: String,
Steps:
[
{
Name: String,
At: 0001-01-01,
Done: False,
Current: False
}
],
Expired: False,
Invalid: False,
Business:
{
Name: String,
Phone: String
},
Courier:
{
State: String,
Code: String,
RunCode: String,
Shape: String,
Template: String,
CourierStep: String,
UnitOne: String,
UnitMany: String,
UnitOneEs: String,
UnitManyEs: String,
FacilityNoun: String,
FacilityNounEs: String,
Units: 0,
UnitsCounted: False,
Address: String,
DropoffAddress: String,
DropoffName: String,
Instructions: String,
GateCode: String,
Handoff: String,
LevelName: String,
ReadyPromise: String,
WindowText: String,
IsAsap: False,
Times:
{
String: String
},
StopPosition: 0,
StopCount: 0,
DeliveryWindowText: String,
Driver:
{
FirstName: String,
Initial: String,
Vehicle: String,
Plate: String,
EtaMin: 0,
EtaPct: 0
},
Proof:
{
Kind: String,
PhotoUrl: String,
AtText: String,
GpsOk: False,
Units: 0,
DamageNote: String,
DeliveredTo: String,
WaitedMin: 0,
Attempts: 0,
ContactedText: String,
EachTagged: False,
EachScanned: False
},
HandoffCode: String,
Rating:
{
Stars: 0,
Tags: String,
Tip: 0,
TipStatus: String
},
TipAllowed: False,
TipsPct: 0,
Missed:
{
Code: String,
Fee: 0,
WaitedMin: 0,
AutoRebook: False,
RebookWindowText: String,
Slots:
[
{
Id: String,
Day: String,
DayEs: String,
Win: String
}
]
},
CancelFee: 0,
CancelFeeCharged: 0,
CancelledBy: String,
BookUrl: String,
Can:
{
EditInstructions: False,
ChangeUnits: False,
Cancel: False,
RescheduleDelivery: False,
Rebook: False,
Rate: False,
Message: False,
Report: False,
MaxUnits: 0
},
DeliverySlots:
[
{
Id: String,
Day: String,
DayEs: String,
Win: String
}
],
Messages:
[
{
Who: String,
Mine: False,
Office: False,
AtText: String,
Body: String
}
],
MessagesOpen: False,
CaseCode: String,
CaseStatus: String,
CaseReply: String,
ThreadHrs: 0,
ExpiresUtc: 0001-01-01,
LiveEta: False,
Live: False,
ServerUtc: 0001-01-01
},
Notice: String,
ResponseStatus:
{
ErrorCode: String,
Message: String,
StackTrace: String,
Errors:
[
{
ErrorCode: String,
FieldName: String,
Message: String,
Meta:
{
String: String
}
}
],
Meta:
{
String: String
}
}
}