| GET,OPTIONS | /v1/Scheduler/{SchedulerUrl} | ||
|---|---|---|---|
| GET,OPTIONS | /v1/Scheduler/{SchedulerUrl}/{StartDate} | ||
| GET,OPTIONS | /v1/Scheduler/{SchedulerUrl}/{StartDate}/{LocalDate} | ||
| GET,OPTIONS | /v1/SchedulerServices/{SchedulerUrl}/{StartDate}/{ServiceIdsList} |
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';
class SchedulerRequest implements IConvertible
{
String? SchedulerUrl;
DateTime? StartDate;
List<String>? Session = [];
String? ServiceIdsList;
SchedulerRequest({this.SchedulerUrl,this.StartDate,this.Session,this.ServiceIdsList});
SchedulerRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
SchedulerUrl = json['SchedulerUrl'];
StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!);
Session = JsonConverters.fromJson(json['Session'],'List<String>',context!);
ServiceIdsList = json['ServiceIdsList'];
return this;
}
Map<String, dynamic> toJson() => {
'SchedulerUrl': SchedulerUrl,
'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!),
'Session': JsonConverters.toJson(Session,'List<String>',context!),
'ServiceIdsList': ServiceIdsList
};
getTypeName() => "SchedulerRequest";
TypeContext? context = _ctx;
}
class ScheduleConfigTimeBlock implements IConvertible
{
Duration? StartTime;
String? DayStartFriendly;
Duration? EndTime;
String? DayEndFriendly;
ScheduleConfigTimeBlock({this.StartTime,this.DayStartFriendly,this.EndTime,this.DayEndFriendly});
ScheduleConfigTimeBlock.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
StartTime = JsonConverters.fromJson(json['StartTime'],'Duration',context!);
DayStartFriendly = json['DayStartFriendly'];
EndTime = JsonConverters.fromJson(json['EndTime'],'Duration',context!);
DayEndFriendly = json['DayEndFriendly'];
return this;
}
Map<String, dynamic> toJson() => {
'StartTime': JsonConverters.toJson(StartTime,'Duration',context!),
'DayStartFriendly': DayStartFriendly,
'EndTime': JsonConverters.toJson(EndTime,'Duration',context!),
'DayEndFriendly': DayEndFriendly
};
getTypeName() => "ScheduleConfigTimeBlock";
TypeContext? context = _ctx;
}
class ScheduleConfigDay implements IConvertible
{
String? DayName;
int? DayNumber;
bool? DayEnabled;
List<ScheduleConfigTimeBlock>? TimeBlocks = [];
ScheduleConfigDay({this.DayName,this.DayNumber,this.DayEnabled,this.TimeBlocks});
ScheduleConfigDay.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
DayName = json['DayName'];
DayNumber = json['DayNumber'];
DayEnabled = json['DayEnabled'];
TimeBlocks = JsonConverters.fromJson(json['TimeBlocks'],'List<ScheduleConfigTimeBlock>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'DayName': DayName,
'DayNumber': DayNumber,
'DayEnabled': DayEnabled,
'TimeBlocks': JsonConverters.toJson(TimeBlocks,'List<ScheduleConfigTimeBlock>',context!)
};
getTypeName() => "ScheduleConfigDay";
TypeContext? context = _ctx;
}
class LineImage implements IConvertible
{
String? ImageId;
String? FileName;
String? ImageTitle;
DateTime? UploadDate;
LineImage({this.ImageId,this.FileName,this.ImageTitle,this.UploadDate});
LineImage.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ImageId = json['ImageId'];
FileName = json['FileName'];
ImageTitle = json['ImageTitle'];
UploadDate = JsonConverters.fromJson(json['UploadDate'],'DateTime',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ImageId': ImageId,
'FileName': FileName,
'ImageTitle': ImageTitle,
'UploadDate': JsonConverters.toJson(UploadDate,'DateTime',context!)
};
getTypeName() => "LineImage";
TypeContext? context = _ctx;
}
class Line implements IConvertible
{
String? Id;
String? LocationId;
String? LocationName;
String? Name;
String? Description;
int? ServiceDurationMinutes;
int? WaitTime;
double? Cost;
int? UpperThreshold;
int? LowerThreshold;
bool? Active;
DateTime? EntDate;
DateTime? ModDate;
bool? SendQuestionnaire;
bool? RequireUpload;
String? UploadMessage;
List<LineImage>? LineImages = [];
Line({this.Id,this.LocationId,this.LocationName,this.Name,this.Description,this.ServiceDurationMinutes,this.WaitTime,this.Cost,this.UpperThreshold,this.LowerThreshold,this.Active,this.EntDate,this.ModDate,this.SendQuestionnaire,this.RequireUpload,this.UploadMessage,this.LineImages});
Line.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
LocationId = json['LocationId'];
LocationName = json['LocationName'];
Name = json['Name'];
Description = json['Description'];
ServiceDurationMinutes = json['ServiceDurationMinutes'];
WaitTime = json['WaitTime'];
Cost = JsonConverters.toDouble(json['Cost']);
UpperThreshold = json['UpperThreshold'];
LowerThreshold = json['LowerThreshold'];
Active = json['Active'];
EntDate = JsonConverters.fromJson(json['EntDate'],'DateTime',context!);
ModDate = JsonConverters.fromJson(json['ModDate'],'DateTime',context!);
SendQuestionnaire = json['SendQuestionnaire'];
RequireUpload = json['RequireUpload'];
UploadMessage = json['UploadMessage'];
LineImages = JsonConverters.fromJson(json['LineImages'],'List<LineImage>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'LocationId': LocationId,
'LocationName': LocationName,
'Name': Name,
'Description': Description,
'ServiceDurationMinutes': ServiceDurationMinutes,
'WaitTime': WaitTime,
'Cost': Cost,
'UpperThreshold': UpperThreshold,
'LowerThreshold': LowerThreshold,
'Active': Active,
'EntDate': JsonConverters.toJson(EntDate,'DateTime',context!),
'ModDate': JsonConverters.toJson(ModDate,'DateTime',context!),
'SendQuestionnaire': SendQuestionnaire,
'RequireUpload': RequireUpload,
'UploadMessage': UploadMessage,
'LineImages': JsonConverters.toJson(LineImages,'List<LineImage>',context!)
};
getTypeName() => "Line";
TypeContext? context = _ctx;
}
class SchedulerConfiguration implements IConvertible
{
int? ConfigId;
String? SchedulerUrl;
String? SchedulerName;
String? DefaultLocation;
String? DefaultSummary;
String? DefaultDescription;
Duration? DayStart;
String? DayStartFriendly;
Duration? DayEnd;
String? DayEndFriendly;
int? TimeslotDuration;
int? NumberOfSlots;
String? LocationId;
String? CalendarId;
int? AgentId;
String? TimeZone;
List<ScheduleConfigDay>? AvailableDateTimes = [];
List<String>? AvailableServices = [];
List<Line>? AllServices = [];
SchedulerConfiguration({this.ConfigId,this.SchedulerUrl,this.SchedulerName,this.DefaultLocation,this.DefaultSummary,this.DefaultDescription,this.DayStart,this.DayStartFriendly,this.DayEnd,this.DayEndFriendly,this.TimeslotDuration,this.NumberOfSlots,this.LocationId,this.CalendarId,this.AgentId,this.TimeZone,this.AvailableDateTimes,this.AvailableServices,this.AllServices});
SchedulerConfiguration.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ConfigId = json['ConfigId'];
SchedulerUrl = json['SchedulerUrl'];
SchedulerName = json['SchedulerName'];
DefaultLocation = json['DefaultLocation'];
DefaultSummary = json['DefaultSummary'];
DefaultDescription = json['DefaultDescription'];
DayStart = JsonConverters.fromJson(json['DayStart'],'Duration',context!);
DayStartFriendly = json['DayStartFriendly'];
DayEnd = JsonConverters.fromJson(json['DayEnd'],'Duration',context!);
DayEndFriendly = json['DayEndFriendly'];
TimeslotDuration = json['TimeslotDuration'];
NumberOfSlots = json['NumberOfSlots'];
LocationId = json['LocationId'];
CalendarId = json['CalendarId'];
AgentId = json['AgentId'];
TimeZone = json['TimeZone'];
AvailableDateTimes = JsonConverters.fromJson(json['AvailableDateTimes'],'List<ScheduleConfigDay>',context!);
AvailableServices = JsonConverters.fromJson(json['AvailableServices'],'List<String>',context!);
AllServices = JsonConverters.fromJson(json['AllServices'],'List<Line>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ConfigId': ConfigId,
'SchedulerUrl': SchedulerUrl,
'SchedulerName': SchedulerName,
'DefaultLocation': DefaultLocation,
'DefaultSummary': DefaultSummary,
'DefaultDescription': DefaultDescription,
'DayStart': JsonConverters.toJson(DayStart,'Duration',context!),
'DayStartFriendly': DayStartFriendly,
'DayEnd': JsonConverters.toJson(DayEnd,'Duration',context!),
'DayEndFriendly': DayEndFriendly,
'TimeslotDuration': TimeslotDuration,
'NumberOfSlots': NumberOfSlots,
'LocationId': LocationId,
'CalendarId': CalendarId,
'AgentId': AgentId,
'TimeZone': TimeZone,
'AvailableDateTimes': JsonConverters.toJson(AvailableDateTimes,'List<ScheduleConfigDay>',context!),
'AvailableServices': JsonConverters.toJson(AvailableServices,'List<String>',context!),
'AllServices': JsonConverters.toJson(AllServices,'List<Line>',context!)
};
getTypeName() => "SchedulerConfiguration";
TypeContext? context = _ctx;
}
class Contact implements IConvertible
{
int? ContactId;
int? ContactType;
String? FirstName;
String? LastName;
String? Name;
String? Role;
String? Title;
String? EmailWork;
String? EmailPersonal;
String? District;
int? DistrictID;
String? School;
int? SchoolID;
String? State;
String? StateName;
int? StateID;
int? CountyID;
String? County;
String? Phone;
String? Department;
String? Flow;
DateTime? LastContact;
bool? DoNotContact;
bool? Active;
int? AgentId;
String? PhoneAlt;
int? PeraContactId;
String? RoomNumber;
int? SourceTypeId;
String? SourceTypeDesc;
String? SourceNote;
int? ContactStatusId;
String? ContactStatusDesc;
String? SSN;
DateTime? DateOfBirth;
bool? Deleted;
bool? IsShared;
String? address_line1;
String? address_city;
String? address_state;
String? address_zip;
String? DeletedBy;
DateTime? DeletedDateTimeUtc;
bool? HasNBC;
bool? HasFactFinderSheet;
String? MiddleInitial;
String? Tags;
DateTime? DateCreated;
String? PhoneLabel;
String? AltPhoneLabel;
String? Carriers;
String? ContactImage;
String? CompanyAffiliation;
String? AdditionalInformation;
bool? HasGiftCard;
int? ContactCategory;
int? WritingAgentId;
String? WritingAgentName;
String? MaritalStatus;
double? TotalDebtAmount;
int? NumberOfDebtAccounts;
int? FactFinderCodeId;
String? BusinessName;
String? DBA;
String? ContactGUID;
DateTime? ProjectEndDate;
int? Rate;
int? JobID;
String? JobName;
int? JobCount;
bool? Locked;
int? LockedByAgentId;
DateTime? LockedTimestamp;
String? Initials;
String? ContactCategoryName;
bool? SMSOptIn;
Contact({this.ContactId,this.ContactType,this.FirstName,this.LastName,this.Name,this.Role,this.Title,this.EmailWork,this.EmailPersonal,this.District,this.DistrictID,this.School,this.SchoolID,this.State,this.StateName,this.StateID,this.CountyID,this.County,this.Phone,this.Department,this.Flow,this.LastContact,this.DoNotContact,this.Active,this.AgentId,this.PhoneAlt,this.PeraContactId,this.RoomNumber,this.SourceTypeId,this.SourceTypeDesc,this.SourceNote,this.ContactStatusId,this.ContactStatusDesc,this.SSN,this.DateOfBirth,this.Deleted,this.IsShared,this.address_line1,this.address_city,this.address_state,this.address_zip,this.DeletedBy,this.DeletedDateTimeUtc,this.HasNBC,this.HasFactFinderSheet,this.MiddleInitial,this.Tags,this.DateCreated,this.PhoneLabel,this.AltPhoneLabel,this.Carriers,this.ContactImage,this.CompanyAffiliation,this.AdditionalInformation,this.HasGiftCard,this.ContactCategory,this.WritingAgentId,this.WritingAgentName,this.MaritalStatus,this.TotalDebtAmount,this.NumberOfDebtAccounts,this.FactFinderCodeId,this.BusinessName,this.DBA,this.ContactGUID,this.ProjectEndDate,this.Rate,this.JobID,this.JobName,this.JobCount,this.Locked,this.LockedByAgentId,this.LockedTimestamp,this.Initials,this.ContactCategoryName,this.SMSOptIn});
Contact.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ContactId = json['ContactId'];
ContactType = json['ContactType'];
FirstName = json['FirstName'];
LastName = json['LastName'];
Name = json['Name'];
Role = json['Role'];
Title = json['Title'];
EmailWork = json['EmailWork'];
EmailPersonal = json['EmailPersonal'];
District = json['District'];
DistrictID = json['DistrictID'];
School = json['School'];
SchoolID = json['SchoolID'];
State = json['State'];
StateName = json['StateName'];
StateID = json['StateID'];
CountyID = json['CountyID'];
County = json['County'];
Phone = json['Phone'];
Department = json['Department'];
Flow = json['Flow'];
LastContact = JsonConverters.fromJson(json['LastContact'],'DateTime',context!);
DoNotContact = json['DoNotContact'];
Active = json['Active'];
AgentId = json['AgentId'];
PhoneAlt = json['PhoneAlt'];
PeraContactId = json['PeraContactId'];
RoomNumber = json['RoomNumber'];
SourceTypeId = json['SourceTypeId'];
SourceTypeDesc = json['SourceTypeDesc'];
SourceNote = json['SourceNote'];
ContactStatusId = json['ContactStatusId'];
ContactStatusDesc = json['ContactStatusDesc'];
SSN = json['SSN'];
DateOfBirth = JsonConverters.fromJson(json['DateOfBirth'],'DateTime',context!);
Deleted = json['Deleted'];
IsShared = json['IsShared'];
address_line1 = json['address_line1'];
address_city = json['address_city'];
address_state = json['address_state'];
address_zip = json['address_zip'];
DeletedBy = json['DeletedBy'];
DeletedDateTimeUtc = JsonConverters.fromJson(json['DeletedDateTimeUtc'],'DateTime',context!);
HasNBC = json['HasNBC'];
HasFactFinderSheet = json['HasFactFinderSheet'];
MiddleInitial = json['MiddleInitial'];
Tags = json['Tags'];
DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!);
PhoneLabel = json['PhoneLabel'];
AltPhoneLabel = json['AltPhoneLabel'];
Carriers = json['Carriers'];
ContactImage = json['ContactImage'];
CompanyAffiliation = json['CompanyAffiliation'];
AdditionalInformation = json['AdditionalInformation'];
HasGiftCard = json['HasGiftCard'];
ContactCategory = json['ContactCategory'];
WritingAgentId = json['WritingAgentId'];
WritingAgentName = json['WritingAgentName'];
MaritalStatus = json['MaritalStatus'];
TotalDebtAmount = JsonConverters.toDouble(json['TotalDebtAmount']);
NumberOfDebtAccounts = json['NumberOfDebtAccounts'];
FactFinderCodeId = json['FactFinderCodeId'];
BusinessName = json['BusinessName'];
DBA = json['DBA'];
ContactGUID = json['ContactGUID'];
ProjectEndDate = JsonConverters.fromJson(json['ProjectEndDate'],'DateTime',context!);
Rate = json['Rate'];
JobID = json['JobID'];
JobName = json['JobName'];
JobCount = json['JobCount'];
Locked = json['Locked'];
LockedByAgentId = json['LockedByAgentId'];
LockedTimestamp = JsonConverters.fromJson(json['LockedTimestamp'],'DateTime',context!);
Initials = json['Initials'];
ContactCategoryName = json['ContactCategoryName'];
SMSOptIn = json['SMSOptIn'];
return this;
}
Map<String, dynamic> toJson() => {
'ContactId': ContactId,
'ContactType': ContactType,
'FirstName': FirstName,
'LastName': LastName,
'Name': Name,
'Role': Role,
'Title': Title,
'EmailWork': EmailWork,
'EmailPersonal': EmailPersonal,
'District': District,
'DistrictID': DistrictID,
'School': School,
'SchoolID': SchoolID,
'State': State,
'StateName': StateName,
'StateID': StateID,
'CountyID': CountyID,
'County': County,
'Phone': Phone,
'Department': Department,
'Flow': Flow,
'LastContact': JsonConverters.toJson(LastContact,'DateTime',context!),
'DoNotContact': DoNotContact,
'Active': Active,
'AgentId': AgentId,
'PhoneAlt': PhoneAlt,
'PeraContactId': PeraContactId,
'RoomNumber': RoomNumber,
'SourceTypeId': SourceTypeId,
'SourceTypeDesc': SourceTypeDesc,
'SourceNote': SourceNote,
'ContactStatusId': ContactStatusId,
'ContactStatusDesc': ContactStatusDesc,
'SSN': SSN,
'DateOfBirth': JsonConverters.toJson(DateOfBirth,'DateTime',context!),
'Deleted': Deleted,
'IsShared': IsShared,
'address_line1': address_line1,
'address_city': address_city,
'address_state': address_state,
'address_zip': address_zip,
'DeletedBy': DeletedBy,
'DeletedDateTimeUtc': JsonConverters.toJson(DeletedDateTimeUtc,'DateTime',context!),
'HasNBC': HasNBC,
'HasFactFinderSheet': HasFactFinderSheet,
'MiddleInitial': MiddleInitial,
'Tags': Tags,
'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!),
'PhoneLabel': PhoneLabel,
'AltPhoneLabel': AltPhoneLabel,
'Carriers': Carriers,
'ContactImage': ContactImage,
'CompanyAffiliation': CompanyAffiliation,
'AdditionalInformation': AdditionalInformation,
'HasGiftCard': HasGiftCard,
'ContactCategory': ContactCategory,
'WritingAgentId': WritingAgentId,
'WritingAgentName': WritingAgentName,
'MaritalStatus': MaritalStatus,
'TotalDebtAmount': TotalDebtAmount,
'NumberOfDebtAccounts': NumberOfDebtAccounts,
'FactFinderCodeId': FactFinderCodeId,
'BusinessName': BusinessName,
'DBA': DBA,
'ContactGUID': ContactGUID,
'ProjectEndDate': JsonConverters.toJson(ProjectEndDate,'DateTime',context!),
'Rate': Rate,
'JobID': JobID,
'JobName': JobName,
'JobCount': JobCount,
'Locked': Locked,
'LockedByAgentId': LockedByAgentId,
'LockedTimestamp': JsonConverters.toJson(LockedTimestamp,'DateTime',context!),
'Initials': Initials,
'ContactCategoryName': ContactCategoryName,
'SMSOptIn': SMSOptIn
};
getTypeName() => "Contact";
TypeContext? context = _ctx;
}
class SchedulerTimeslot implements IConvertible
{
DateTime? Day;
Duration? Time;
int? Duration;
DateTime? StartDateTime;
DateTime? EndDateTime;
String? TimeFriendly;
Contact? Contact;
List<String>? ServiceIds = [];
String? LocationId;
bool? Unavailable;
List<int>? BookedIds = [];
String? CalendarId;
String? SchedulerUrl;
SchedulerTimeslot({this.Day,this.Time,this.Duration,this.StartDateTime,this.EndDateTime,this.TimeFriendly,this.Contact,this.ServiceIds,this.LocationId,this.Unavailable,this.BookedIds,this.CalendarId,this.SchedulerUrl});
SchedulerTimeslot.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Day = JsonConverters.fromJson(json['Day'],'DateTime',context!);
Time = JsonConverters.fromJson(json['Time'],'Duration',context!);
Duration = json['Duration'];
StartDateTime = JsonConverters.fromJson(json['StartDateTime'],'DateTime',context!);
EndDateTime = JsonConverters.fromJson(json['EndDateTime'],'DateTime',context!);
TimeFriendly = json['TimeFriendly'];
Contact = JsonConverters.fromJson(json['Contact'],'Contact',context!);
ServiceIds = JsonConverters.fromJson(json['ServiceIds'],'List<String>',context!);
LocationId = json['LocationId'];
Unavailable = json['Unavailable'];
BookedIds = JsonConverters.fromJson(json['BookedIds'],'List<int>',context!);
CalendarId = json['CalendarId'];
SchedulerUrl = json['SchedulerUrl'];
return this;
}
Map<String, dynamic> toJson() => {
'Day': JsonConverters.toJson(Day,'DateTime',context!),
'Time': JsonConverters.toJson(Time,'Duration',context!),
'Duration': Duration,
'StartDateTime': JsonConverters.toJson(StartDateTime,'DateTime',context!),
'EndDateTime': JsonConverters.toJson(EndDateTime,'DateTime',context!),
'TimeFriendly': TimeFriendly,
'Contact': JsonConverters.toJson(Contact,'Contact',context!),
'ServiceIds': JsonConverters.toJson(ServiceIds,'List<String>',context!),
'LocationId': LocationId,
'Unavailable': Unavailable,
'BookedIds': JsonConverters.toJson(BookedIds,'List<int>',context!),
'CalendarId': CalendarId,
'SchedulerUrl': SchedulerUrl
};
getTypeName() => "SchedulerTimeslot";
TypeContext? context = _ctx;
}
class SchedulerDay implements IConvertible
{
DateTime? Day;
int? MonthNumber;
int? DayNumber;
String? DayOfWeek;
List<SchedulerTimeslot>? Timeslots = [];
SchedulerDay({this.Day,this.MonthNumber,this.DayNumber,this.DayOfWeek,this.Timeslots});
SchedulerDay.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Day = JsonConverters.fromJson(json['Day'],'DateTime',context!);
MonthNumber = json['MonthNumber'];
DayNumber = json['DayNumber'];
DayOfWeek = json['DayOfWeek'];
Timeslots = JsonConverters.fromJson(json['Timeslots'],'List<SchedulerTimeslot>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Day': JsonConverters.toJson(Day,'DateTime',context!),
'MonthNumber': MonthNumber,
'DayNumber': DayNumber,
'DayOfWeek': DayOfWeek,
'Timeslots': JsonConverters.toJson(Timeslots,'List<SchedulerTimeslot>',context!)
};
getTypeName() => "SchedulerDay";
TypeContext? context = _ctx;
}
class SchedulerWeek implements IConvertible
{
SchedulerConfiguration? Settings;
List<SchedulerDay>? Days = [];
SchedulerWeek({this.Settings,this.Days});
SchedulerWeek.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Settings = JsonConverters.fromJson(json['Settings'],'SchedulerConfiguration',context!);
Days = JsonConverters.fromJson(json['Days'],'List<SchedulerDay>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Settings': JsonConverters.toJson(Settings,'SchedulerConfiguration',context!),
'Days': JsonConverters.toJson(Days,'List<SchedulerDay>',context!)
};
getTypeName() => "SchedulerWeek";
TypeContext? context = _ctx;
}
class SchedulerResponse implements IConvertible
{
ResponseStatus? ResponseStatus;
SchedulerWeek? Week;
List<Line>? Services = [];
SchedulerResponse({this.ResponseStatus,this.Week,this.Services});
SchedulerResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!);
Week = JsonConverters.fromJson(json['Week'],'SchedulerWeek',context!);
Services = JsonConverters.fromJson(json['Services'],'List<Line>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!),
'Week': JsonConverters.toJson(Week,'SchedulerWeek',context!),
'Services': JsonConverters.toJson(Services,'List<Line>',context!)
};
getTypeName() => "SchedulerResponse";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
'SchedulerRequest': TypeInfo(TypeOf.Class, create:() => SchedulerRequest()),
'ScheduleConfigTimeBlock': TypeInfo(TypeOf.Class, create:() => ScheduleConfigTimeBlock()),
'ScheduleConfigDay': TypeInfo(TypeOf.Class, create:() => ScheduleConfigDay()),
'List<ScheduleConfigTimeBlock>': TypeInfo(TypeOf.Class, create:() => <ScheduleConfigTimeBlock>[]),
'LineImage': TypeInfo(TypeOf.Class, create:() => LineImage()),
'Line': TypeInfo(TypeOf.Class, create:() => Line()),
'List<LineImage>': TypeInfo(TypeOf.Class, create:() => <LineImage>[]),
'SchedulerConfiguration': TypeInfo(TypeOf.Class, create:() => SchedulerConfiguration()),
'List<ScheduleConfigDay>': TypeInfo(TypeOf.Class, create:() => <ScheduleConfigDay>[]),
'List<Line>': TypeInfo(TypeOf.Class, create:() => <Line>[]),
'Contact': TypeInfo(TypeOf.Class, create:() => Contact()),
'SchedulerTimeslot': TypeInfo(TypeOf.Class, create:() => SchedulerTimeslot()),
'SchedulerDay': TypeInfo(TypeOf.Class, create:() => SchedulerDay()),
'List<SchedulerTimeslot>': TypeInfo(TypeOf.Class, create:() => <SchedulerTimeslot>[]),
'SchedulerWeek': TypeInfo(TypeOf.Class, create:() => SchedulerWeek()),
'List<SchedulerDay>': TypeInfo(TypeOf.Class, create:() => <SchedulerDay>[]),
'SchedulerResponse': TypeInfo(TypeOf.Class, create:() => SchedulerResponse()),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/Scheduler/{SchedulerUrl} HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/json
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length
{"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}},"Week":{"Settings":{"ConfigId":0,"SchedulerUrl":"String","SchedulerName":"String","DefaultLocation":"String","DefaultSummary":"String","DefaultDescription":"String","DayStart":"PT0S","DayStartFriendly":"00:00","DayEnd":"PT0S","DayEndFriendly":"00:00","TimeslotDuration":0,"NumberOfSlots":0,"LocationId":"00000000000000000000000000000000","CalendarId":"00000000000000000000000000000000","AgentId":0,"TimeZone":"String","AvailableDateTimes":[{"DayName":"String","DayNumber":0,"DayEnabled":false,"TimeBlocks":[{"StartTime":"PT0S","DayStartFriendly":"00:00","EndTime":"PT0S","DayEndFriendly":"00:00"}]}],"AvailableServices":["00000000000000000000000000000000"],"AllServices":[{"Id":"00000000000000000000000000000000","LocationId":"00000000000000000000000000000000","LocationName":"String","Name":"String","Description":"String","ServiceDurationMinutes":0,"WaitTime":0,"Cost":0,"UpperThreshold":0,"LowerThreshold":0,"Active":false,"EntDate":"0001-01-01T00:00:00.0000000","ModDate":"0001-01-01T00:00:00.0000000","SendQuestionnaire":false,"RequireUpload":false,"UploadMessage":"String","LineImages":[{"ImageId":"00000000000000000000000000000000","FileName":"String","ImageTitle":"String","UploadDate":"0001-01-01T00:00:00.0000000"}]}]},"Days":[{}]},"Services":[{"Id":"00000000000000000000000000000000","LocationId":"00000000000000000000000000000000","LocationName":"String","Name":"String","Description":"String","ServiceDurationMinutes":0,"WaitTime":0,"Cost":0,"UpperThreshold":0,"LowerThreshold":0,"Active":false,"EntDate":"0001-01-01T00:00:00.0000000","ModDate":"0001-01-01T00:00:00.0000000","SendQuestionnaire":false,"RequireUpload":false,"UploadMessage":"String","LineImages":[{"ImageId":"00000000000000000000000000000000","FileName":"String","ImageTitle":"String","UploadDate":"0001-01-01T00:00:00.0000000"}]}]}