/* Options: Date: 2026-03-30 08:55:39 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://api.dev.dynamics.trendsic.com //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: SchedulerRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; class LineImage implements IConvertible { String? ImageId; String? LineId; String? ImageTitle; DateTime? UploadDate; String? MimeType; String? FileName; LineImage({this.ImageId,this.LineId,this.ImageTitle,this.UploadDate,this.MimeType,this.FileName}); LineImage.fromJson(Map json) { fromMap(json); } fromMap(Map json) { ImageId = json['ImageId']; LineId = json['LineId']; ImageTitle = json['ImageTitle']; UploadDate = JsonConverters.fromJson(json['UploadDate'],'DateTime',context!); MimeType = json['MimeType']; FileName = json['FileName']; return this; } Map toJson() => { 'ImageId': ImageId, 'LineId': LineId, 'ImageTitle': ImageTitle, 'UploadDate': JsonConverters.toJson(UploadDate,'DateTime',context!), 'MimeType': MimeType, 'FileName': FileName }; 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? 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 json) { fromMap(json); } fromMap(Map 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',context!); return this; } Map 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',context!) }; getTypeName() => "Line"; TypeContext? context = _ctx; } class Location implements IConvertible { String? Id; String? ClientId; String? Name; String? Address1; String? Address2; String? City; String? State; String? Zip; String? Phone; String? Fax; String? URL; String? Email; String? TimeZone; bool? Active; DateTime? EntDate; DateTime? ModDate; String? LocationImage; Location({this.Id,this.ClientId,this.Name,this.Address1,this.Address2,this.City,this.State,this.Zip,this.Phone,this.Fax,this.URL,this.Email,this.TimeZone,this.Active,this.EntDate,this.ModDate,this.LocationImage}); Location.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Id = json['Id']; ClientId = json['ClientId']; Name = json['Name']; Address1 = json['Address1']; Address2 = json['Address2']; City = json['City']; State = json['State']; Zip = json['Zip']; Phone = json['Phone']; Fax = json['Fax']; URL = json['URL']; Email = json['Email']; TimeZone = json['TimeZone']; Active = json['Active']; EntDate = JsonConverters.fromJson(json['EntDate'],'DateTime',context!); ModDate = JsonConverters.fromJson(json['ModDate'],'DateTime',context!); LocationImage = json['LocationImage']; return this; } Map toJson() => { 'Id': Id, 'ClientId': ClientId, 'Name': Name, 'Address1': Address1, 'Address2': Address2, 'City': City, 'State': State, 'Zip': Zip, 'Phone': Phone, 'Fax': Fax, 'URL': URL, 'Email': Email, 'TimeZone': TimeZone, 'Active': Active, 'EntDate': JsonConverters.toJson(EntDate,'DateTime',context!), 'ModDate': JsonConverters.toJson(ModDate,'DateTime',context!), 'LocationImage': LocationImage }; getTypeName() => "Location"; 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 json) { fromMap(json); } fromMap(Map 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 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? ServiceIds = []; String? LocationId; bool? Unavailable; List? 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 json) { fromMap(json); } fromMap(Map 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',context!); LocationId = json['LocationId']; Unavailable = json['Unavailable']; BookedIds = JsonConverters.fromJson(json['BookedIds'],'List',context!); CalendarId = json['CalendarId']; SchedulerUrl = json['SchedulerUrl']; return this; } Map 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',context!), 'LocationId': LocationId, 'Unavailable': Unavailable, 'BookedIds': JsonConverters.toJson(BookedIds,'List',context!), 'CalendarId': CalendarId, 'SchedulerUrl': SchedulerUrl }; getTypeName() => "SchedulerTimeslot"; TypeContext? context = _ctx; } class QueueDefault implements IConvertible { String? LocationId; List? Services = []; QueueDefault({this.LocationId,this.Services}); QueueDefault.fromJson(Map json) { fromMap(json); } fromMap(Map json) { LocationId = json['LocationId']; Services = JsonConverters.fromJson(json['Services'],'List',context!); return this; } Map toJson() => { 'LocationId': LocationId, 'Services': JsonConverters.toJson(Services,'List',context!) }; getTypeName() => "QueueDefault"; TypeContext? context = _ctx; } class Agent implements IConvertible { int? AgentId; String? Company; String? AgentName; String? FirstName; String? LastName; String? MiddleInitial; String? Address1; String? Address2; String? City; String? State; String? Zip; String? Country; String? Email; String? EmailSignature; String? HomePhone; String? CellPhone; String? WorkPhone; bool? InsLicensed; bool? AgreeToDisclosures; DateTime? AgreeToDate; DateTime? PaidDate; String? AgentNumber; String? ReferringAgent; String? PlacementAgent; DateTime? CreatedDate; String? UserId; bool? IsAgent; String? Package; String? StoreName; String? Notes; int? Upline1; int? Upline2; int? Upline3; int? Upline4; int? MVPID; int? AVPID; int? RVPID; double? AgentLevel; bool? IsMVP; bool? IsRVP; bool? IsAVP; bool? IsAdmin; bool? IsBusinessCardAdmin; String? TeamName; String? LocationId; String? CalendarId; String? Rank; bool? NBC; double? Upline1Percent; double? Upline2Percent; double? Upline3Percent; double? Upline4Percent; String? AgentStatus; String? Office; DateTime? DOB; String? SSN; String? Fax; String? BusinessEmail; DateTime? ModifiedDate; String? ModifiedBy; String? TimeZone; bool? LeaderLocked; DateTime? LastSubmittedBusinessDate; DateTime? GracePeriodDate; bool? Vested; DateTime? DirectPay; String? DirectPayApprBy; double? FactFinderBilling; String? FullName; String? ByLastName; bool? IsSecurityLicensed; bool? IsEncompassAdmin; String? ApiKey; String? LastSessionId; DateTime? LastLogin; bool? MfaActive; bool? RequireMFA; String? SMSPhoneNumber; bool? VerifiedEmailStatus; bool? VerifiedCellPhoneStatus; String? SchedulerUrl; QueueDefault? QueueDefaults; List? Roles = []; bool? PasswordUpdated; bool? RestrictToSingleSession; String? AgentImage; Agent({this.AgentId,this.Company,this.AgentName,this.FirstName,this.LastName,this.MiddleInitial,this.Address1,this.Address2,this.City,this.State,this.Zip,this.Country,this.Email,this.EmailSignature,this.HomePhone,this.CellPhone,this.WorkPhone,this.InsLicensed,this.AgreeToDisclosures,this.AgreeToDate,this.PaidDate,this.AgentNumber,this.ReferringAgent,this.PlacementAgent,this.CreatedDate,this.UserId,this.IsAgent,this.Package,this.StoreName,this.Notes,this.Upline1,this.Upline2,this.Upline3,this.Upline4,this.MVPID,this.AVPID,this.RVPID,this.AgentLevel,this.IsMVP,this.IsRVP,this.IsAVP,this.IsAdmin,this.IsBusinessCardAdmin,this.TeamName,this.LocationId,this.CalendarId,this.Rank,this.NBC,this.Upline1Percent,this.Upline2Percent,this.Upline3Percent,this.Upline4Percent,this.AgentStatus,this.Office,this.DOB,this.SSN,this.Fax,this.BusinessEmail,this.ModifiedDate,this.ModifiedBy,this.TimeZone,this.LeaderLocked,this.LastSubmittedBusinessDate,this.GracePeriodDate,this.Vested,this.DirectPay,this.DirectPayApprBy,this.FactFinderBilling,this.FullName,this.ByLastName,this.IsSecurityLicensed,this.IsEncompassAdmin,this.ApiKey,this.LastSessionId,this.LastLogin,this.MfaActive,this.RequireMFA,this.SMSPhoneNumber,this.VerifiedEmailStatus,this.VerifiedCellPhoneStatus,this.SchedulerUrl,this.QueueDefaults,this.Roles,this.PasswordUpdated,this.RestrictToSingleSession,this.AgentImage}); Agent.fromJson(Map json) { fromMap(json); } fromMap(Map json) { AgentId = json['AgentId']; Company = json['Company']; AgentName = json['AgentName']; FirstName = json['FirstName']; LastName = json['LastName']; MiddleInitial = json['MiddleInitial']; Address1 = json['Address1']; Address2 = json['Address2']; City = json['City']; State = json['State']; Zip = json['Zip']; Country = json['Country']; Email = json['Email']; EmailSignature = json['EmailSignature']; HomePhone = json['HomePhone']; CellPhone = json['CellPhone']; WorkPhone = json['WorkPhone']; InsLicensed = json['InsLicensed']; AgreeToDisclosures = json['AgreeToDisclosures']; AgreeToDate = JsonConverters.fromJson(json['AgreeToDate'],'DateTime',context!); PaidDate = JsonConverters.fromJson(json['PaidDate'],'DateTime',context!); AgentNumber = json['AgentNumber']; ReferringAgent = json['ReferringAgent']; PlacementAgent = json['PlacementAgent']; CreatedDate = JsonConverters.fromJson(json['CreatedDate'],'DateTime',context!); UserId = json['UserId']; IsAgent = json['IsAgent']; Package = json['Package']; StoreName = json['StoreName']; Notes = json['Notes']; Upline1 = json['Upline1']; Upline2 = json['Upline2']; Upline3 = json['Upline3']; Upline4 = json['Upline4']; MVPID = json['MVPID']; AVPID = json['AVPID']; RVPID = json['RVPID']; AgentLevel = JsonConverters.toDouble(json['AgentLevel']); IsMVP = json['IsMVP']; IsRVP = json['IsRVP']; IsAVP = json['IsAVP']; IsAdmin = json['IsAdmin']; IsBusinessCardAdmin = json['IsBusinessCardAdmin']; TeamName = json['TeamName']; LocationId = json['LocationId']; CalendarId = json['CalendarId']; Rank = json['Rank']; NBC = json['NBC']; Upline1Percent = JsonConverters.toDouble(json['Upline1Percent']); Upline2Percent = JsonConverters.toDouble(json['Upline2Percent']); Upline3Percent = JsonConverters.toDouble(json['Upline3Percent']); Upline4Percent = JsonConverters.toDouble(json['Upline4Percent']); AgentStatus = json['AgentStatus']; Office = json['Office']; DOB = JsonConverters.fromJson(json['DOB'],'DateTime',context!); SSN = json['SSN']; Fax = json['Fax']; BusinessEmail = json['BusinessEmail']; ModifiedDate = JsonConverters.fromJson(json['ModifiedDate'],'DateTime',context!); ModifiedBy = json['ModifiedBy']; TimeZone = json['TimeZone']; LeaderLocked = json['LeaderLocked']; LastSubmittedBusinessDate = JsonConverters.fromJson(json['LastSubmittedBusinessDate'],'DateTime',context!); GracePeriodDate = JsonConverters.fromJson(json['GracePeriodDate'],'DateTime',context!); Vested = json['Vested']; DirectPay = JsonConverters.fromJson(json['DirectPay'],'DateTime',context!); DirectPayApprBy = json['DirectPayApprBy']; FactFinderBilling = JsonConverters.toDouble(json['FactFinderBilling']); FullName = json['FullName']; ByLastName = json['ByLastName']; IsSecurityLicensed = json['IsSecurityLicensed']; IsEncompassAdmin = json['IsEncompassAdmin']; ApiKey = json['ApiKey']; LastSessionId = json['LastSessionId']; LastLogin = JsonConverters.fromJson(json['LastLogin'],'DateTime',context!); MfaActive = json['MfaActive']; RequireMFA = json['RequireMFA']; SMSPhoneNumber = json['SMSPhoneNumber']; VerifiedEmailStatus = json['VerifiedEmailStatus']; VerifiedCellPhoneStatus = json['VerifiedCellPhoneStatus']; SchedulerUrl = json['SchedulerUrl']; QueueDefaults = JsonConverters.fromJson(json['QueueDefaults'],'QueueDefault',context!); Roles = JsonConverters.fromJson(json['Roles'],'List',context!); PasswordUpdated = json['PasswordUpdated']; RestrictToSingleSession = json['RestrictToSingleSession']; AgentImage = json['AgentImage']; return this; } Map toJson() => { 'AgentId': AgentId, 'Company': Company, 'AgentName': AgentName, 'FirstName': FirstName, 'LastName': LastName, 'MiddleInitial': MiddleInitial, 'Address1': Address1, 'Address2': Address2, 'City': City, 'State': State, 'Zip': Zip, 'Country': Country, 'Email': Email, 'EmailSignature': EmailSignature, 'HomePhone': HomePhone, 'CellPhone': CellPhone, 'WorkPhone': WorkPhone, 'InsLicensed': InsLicensed, 'AgreeToDisclosures': AgreeToDisclosures, 'AgreeToDate': JsonConverters.toJson(AgreeToDate,'DateTime',context!), 'PaidDate': JsonConverters.toJson(PaidDate,'DateTime',context!), 'AgentNumber': AgentNumber, 'ReferringAgent': ReferringAgent, 'PlacementAgent': PlacementAgent, 'CreatedDate': JsonConverters.toJson(CreatedDate,'DateTime',context!), 'UserId': UserId, 'IsAgent': IsAgent, 'Package': Package, 'StoreName': StoreName, 'Notes': Notes, 'Upline1': Upline1, 'Upline2': Upline2, 'Upline3': Upline3, 'Upline4': Upline4, 'MVPID': MVPID, 'AVPID': AVPID, 'RVPID': RVPID, 'AgentLevel': AgentLevel, 'IsMVP': IsMVP, 'IsRVP': IsRVP, 'IsAVP': IsAVP, 'IsAdmin': IsAdmin, 'IsBusinessCardAdmin': IsBusinessCardAdmin, 'TeamName': TeamName, 'LocationId': LocationId, 'CalendarId': CalendarId, 'Rank': Rank, 'NBC': NBC, 'Upline1Percent': Upline1Percent, 'Upline2Percent': Upline2Percent, 'Upline3Percent': Upline3Percent, 'Upline4Percent': Upline4Percent, 'AgentStatus': AgentStatus, 'Office': Office, 'DOB': JsonConverters.toJson(DOB,'DateTime',context!), 'SSN': SSN, 'Fax': Fax, 'BusinessEmail': BusinessEmail, 'ModifiedDate': JsonConverters.toJson(ModifiedDate,'DateTime',context!), 'ModifiedBy': ModifiedBy, 'TimeZone': TimeZone, 'LeaderLocked': LeaderLocked, 'LastSubmittedBusinessDate': JsonConverters.toJson(LastSubmittedBusinessDate,'DateTime',context!), 'GracePeriodDate': JsonConverters.toJson(GracePeriodDate,'DateTime',context!), 'Vested': Vested, 'DirectPay': JsonConverters.toJson(DirectPay,'DateTime',context!), 'DirectPayApprBy': DirectPayApprBy, 'FactFinderBilling': FactFinderBilling, 'FullName': FullName, 'ByLastName': ByLastName, 'IsSecurityLicensed': IsSecurityLicensed, 'IsEncompassAdmin': IsEncompassAdmin, 'ApiKey': ApiKey, 'LastSessionId': LastSessionId, 'LastLogin': JsonConverters.toJson(LastLogin,'DateTime',context!), 'MfaActive': MfaActive, 'RequireMFA': RequireMFA, 'SMSPhoneNumber': SMSPhoneNumber, 'VerifiedEmailStatus': VerifiedEmailStatus, 'VerifiedCellPhoneStatus': VerifiedCellPhoneStatus, 'SchedulerUrl': SchedulerUrl, 'QueueDefaults': JsonConverters.toJson(QueueDefaults,'QueueDefault',context!), 'Roles': JsonConverters.toJson(Roles,'List',context!), 'PasswordUpdated': PasswordUpdated, 'RestrictToSingleSession': RestrictToSingleSession, 'AgentImage': AgentImage }; getTypeName() => "Agent"; 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? AvailableDateTimes = []; List? AvailableServices = []; List? 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 json) { fromMap(json); } fromMap(Map 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',context!); AvailableServices = JsonConverters.fromJson(json['AvailableServices'],'List',context!); AllServices = JsonConverters.fromJson(json['AllServices'],'List',context!); return this; } Map 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',context!), 'AvailableServices': JsonConverters.toJson(AvailableServices,'List',context!), 'AllServices': JsonConverters.toJson(AllServices,'List',context!) }; getTypeName() => "SchedulerConfiguration"; TypeContext? context = _ctx; } class SchedulerDay implements IConvertible { DateTime? Day; int? MonthNumber; int? DayNumber; String? DayOfWeek; List? Timeslots = []; SchedulerDay({this.Day,this.MonthNumber,this.DayNumber,this.DayOfWeek,this.Timeslots}); SchedulerDay.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Day = JsonConverters.fromJson(json['Day'],'DateTime',context!); MonthNumber = json['MonthNumber']; DayNumber = json['DayNumber']; DayOfWeek = json['DayOfWeek']; Timeslots = JsonConverters.fromJson(json['Timeslots'],'List',context!); return this; } Map toJson() => { 'Day': JsonConverters.toJson(Day,'DateTime',context!), 'MonthNumber': MonthNumber, 'DayNumber': DayNumber, 'DayOfWeek': DayOfWeek, 'Timeslots': JsonConverters.toJson(Timeslots,'List',context!) }; getTypeName() => "SchedulerDay"; TypeContext? context = _ctx; } class SchedulerWeek implements IConvertible { SchedulerConfiguration? Settings; List? Days = []; SchedulerWeek({this.Settings,this.Days}); SchedulerWeek.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Settings = JsonConverters.fromJson(json['Settings'],'SchedulerConfiguration',context!); Days = JsonConverters.fromJson(json['Days'],'List',context!); return this; } Map toJson() => { 'Settings': JsonConverters.toJson(Settings,'SchedulerConfiguration',context!), 'Days': JsonConverters.toJson(Days,'List',context!) }; getTypeName() => "SchedulerWeek"; TypeContext? context = _ctx; } class SchedulerResponse implements IConvertible { Location? Location; Agent? Agent; ResponseStatus? ResponseStatus; SchedulerWeek? Week; List? Services = []; SchedulerResponse({this.Location,this.Agent,this.ResponseStatus,this.Week,this.Services}); SchedulerResponse.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Location = JsonConverters.fromJson(json['Location'],'Location',context!); Agent = JsonConverters.fromJson(json['Agent'],'Agent',context!); ResponseStatus = JsonConverters.fromJson(json['ResponseStatus'],'ResponseStatus',context!); Week = JsonConverters.fromJson(json['Week'],'SchedulerWeek',context!); Services = JsonConverters.fromJson(json['Services'],'List',context!); return this; } Map toJson() => { 'Location': JsonConverters.toJson(Location,'Location',context!), 'Agent': JsonConverters.toJson(Agent,'Agent',context!), 'ResponseStatus': JsonConverters.toJson(ResponseStatus,'ResponseStatus',context!), 'Week': JsonConverters.toJson(Week,'SchedulerWeek',context!), 'Services': JsonConverters.toJson(Services,'List',context!) }; getTypeName() => "SchedulerResponse"; TypeContext? context = _ctx; } // @Route("/v1/Scheduler/{SchedulerUrl}", "GET,OPTIONS") // @Route("/v1/Scheduler/{SchedulerUrl}/{StartDate}", "GET,OPTIONS") // @Route("/v1/Scheduler/{SchedulerUrl}/{StartDate}/{LocalDate}", "GET,OPTIONS") // @Route("/v1/SchedulerServices/{SchedulerUrl}/{StartDate}/{ServiceIdsList}", "GET,OPTIONS") class SchedulerRequest implements IReturn, IConvertible, IGet { String? SchedulerUrl; DateTime? StartDate; List? Session = []; String? ServiceIdsList; SchedulerRequest({this.SchedulerUrl,this.StartDate,this.Session,this.ServiceIdsList}); SchedulerRequest.fromJson(Map json) { fromMap(json); } fromMap(Map json) { SchedulerUrl = json['SchedulerUrl']; StartDate = JsonConverters.fromJson(json['StartDate'],'DateTime',context!); Session = JsonConverters.fromJson(json['Session'],'List',context!); ServiceIdsList = json['ServiceIdsList']; return this; } Map toJson() => { 'SchedulerUrl': SchedulerUrl, 'StartDate': JsonConverters.toJson(StartDate,'DateTime',context!), 'Session': JsonConverters.toJson(Session,'List',context!), 'ServiceIdsList': ServiceIdsList }; createResponse() => SchedulerResponse(); getResponseTypeName() => "SchedulerResponse"; getTypeName() => "SchedulerRequest"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: { 'LineImage': TypeInfo(TypeOf.Class, create:() => LineImage()), 'Line': TypeInfo(TypeOf.Class, create:() => Line()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'Location': TypeInfo(TypeOf.Class, create:() => Location()), 'Contact': TypeInfo(TypeOf.Class, create:() => Contact()), 'SchedulerTimeslot': TypeInfo(TypeOf.Class, create:() => SchedulerTimeslot()), 'QueueDefault': TypeInfo(TypeOf.Class, create:() => QueueDefault()), 'Agent': TypeInfo(TypeOf.Class, create:() => Agent()), 'SchedulerConfiguration': TypeInfo(TypeOf.Class, create:() => SchedulerConfiguration()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ScheduleConfigDay': TypeInfo(TypeOf.Class, create:() => ScheduleConfigDay()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SchedulerDay': TypeInfo(TypeOf.Class, create:() => SchedulerDay()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SchedulerWeek': TypeInfo(TypeOf.Class, create:() => SchedulerWeek()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SchedulerResponse': TypeInfo(TypeOf.Class, create:() => SchedulerResponse()), 'SchedulerRequest': TypeInfo(TypeOf.Class, create:() => SchedulerRequest()), });