/* Options: Date: 2024-05-19 12:47:12 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://evovoice.io //GlobalNamespace: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: BuyPhoneNumber.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart,dart:typed_data */ import 'package:servicestack/servicestack.dart'; import 'dart:typed_data'; enum ActionUrlHttpMethods { GET, POST, } class Struct extends Map implements IConvertible { Struct(); Struct.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); getTypeName() => "Struct"; TypeContext? context = _ctx; } class Value implements IConvertible { bool? boolValue; String? stringValue; double? numberValue; List? listValue; Struct? structValue; Value({this.boolValue,this.stringValue,this.numberValue,this.listValue,this.structValue}); Value.fromJson(Map json) { fromMap(json); } fromMap(Map json) { boolValue = json['boolValue']; stringValue = json['stringValue']; numberValue = JsonConverters.toDouble(json['numberValue']); listValue = JsonConverters.fromJson(json['listValue'],'List',context!); structValue = JsonConverters.fromJson(json['structValue'],'Struct',context!); return this; } Map toJson() => { 'boolValue': boolValue, 'stringValue': stringValue, 'numberValue': numberValue, 'listValue': JsonConverters.toJson(listValue,'List',context!), 'structValue': JsonConverters.toJson(structValue,'Struct',context!) }; getTypeName() => "Value"; TypeContext? context = _ctx; } class AppSettings implements IConvertible { bool? enablePhoneNumberManagement; bool? enableDeviceManagement; bool? enableDialer; bool? enableCallHistory; bool? showFileNameInMessageCenter; String? chakraTheme; String? customCss; String? pageTitle; String? stringMappings; String? logoutUrl; String? portMyNumberUrl; AppSettings({this.enablePhoneNumberManagement,this.enableDeviceManagement,this.enableDialer,this.enableCallHistory,this.showFileNameInMessageCenter,this.chakraTheme,this.customCss,this.pageTitle,this.stringMappings,this.logoutUrl,this.portMyNumberUrl}); AppSettings.fromJson(Map json) { fromMap(json); } fromMap(Map json) { enablePhoneNumberManagement = json['enablePhoneNumberManagement']; enableDeviceManagement = json['enableDeviceManagement']; enableDialer = json['enableDialer']; enableCallHistory = json['enableCallHistory']; showFileNameInMessageCenter = json['showFileNameInMessageCenter']; chakraTheme = json['chakraTheme']; customCss = json['customCss']; pageTitle = json['pageTitle']; stringMappings = json['stringMappings']; logoutUrl = json['logoutUrl']; portMyNumberUrl = json['portMyNumberUrl']; return this; } Map toJson() => { 'enablePhoneNumberManagement': enablePhoneNumberManagement, 'enableDeviceManagement': enableDeviceManagement, 'enableDialer': enableDialer, 'enableCallHistory': enableCallHistory, 'showFileNameInMessageCenter': showFileNameInMessageCenter, 'chakraTheme': chakraTheme, 'customCss': customCss, 'pageTitle': pageTitle, 'stringMappings': stringMappings, 'logoutUrl': logoutUrl, 'portMyNumberUrl': portMyNumberUrl }; getTypeName() => "AppSettings"; TypeContext? context = _ctx; } enum UserModes { SoftPhone, Sip, Flow, DataOnly, ThirdParty, } enum EndpointFlowSchedules { Always, Scheduled, Simple, } class ScheduledFlow implements IConvertible { String? stateName; String? flowId; Struct? flowParams; ScheduledFlow({this.stateName,this.flowId,this.flowParams}); ScheduledFlow.fromJson(Map json) { fromMap(json); } fromMap(Map json) { stateName = json['stateName']; flowId = json['flowId']; flowParams = JsonConverters.fromJson(json['flowParams'],'Struct',context!); return this; } Map toJson() => { 'stateName': stateName, 'flowId': flowId, 'flowParams': JsonConverters.toJson(flowParams,'Struct',context!) }; getTypeName() => "ScheduledFlow"; TypeContext? context = _ctx; } enum TwilioSipRegions { NorthAmericaVirginia, NorthAmericaOregon, EuropeIreland, EuropeFrankfurt, AsiaPacificSingapore, AsiaPacificTokyo, AsiaPacificSydney, SouthAmericaSanPaolo, } enum UserManagerRoles { None, Manager, VoicemailAndCallHistory, Custom, } enum DashboardPermissions { ViewFiles, ViewNotifications, ViewSessions, ViewEndpoints, ViewReports, ViewCustomers, ViewFlows, } enum UserDataFieldModes { Hidden, ReadOnly, ReadWrite, } enum CustomerVisibility { None, CurrentCustomer, CurrentAndChildCustomers, } class EndpointActionUrl implements IConvertible { String? id; String? url; ActionUrlHttpMethods? method; EndpointActionUrl({this.id,this.url,this.method}); EndpointActionUrl.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; url = json['url']; method = JsonConverters.fromJson(json['method'],'ActionUrlHttpMethods',context!); return this; } Map toJson() => { 'id': id, 'url': url, 'method': JsonConverters.toJson(method,'ActionUrlHttpMethods',context!) }; getTypeName() => "EndpointActionUrl"; TypeContext? context = _ctx; } class EndpointContact implements IConvertible { String? id; String? displayName; String? address; EndpointContact({this.id,this.displayName,this.address}); EndpointContact.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; displayName = json['displayName']; address = json['address']; return this; } Map toJson() => { 'id': id, 'displayName': displayName, 'address': address }; getTypeName() => "EndpointContact"; TypeContext? context = _ctx; } enum ThirdPartyPhoneSystemTypes { Demo, Sip, } enum TransportTypes { UDP, TLS, TCP, PERS, } enum AudioCodecTypes { PCMU, GSM, PCMA, G722, G729, ILBC, AMR, AMRWB, SPEEX, DTMF, SPEEXWB, ISACWB, ISACSWB, OPUS, G7221, NONE, } enum DtmfMethods { RFC2833, INFO, } class ThirdPartySipAccountSettings implements IConvertible { String? number; String? agent; String? authName; String? userName; String? displayName; String? password; String? userDomain; int? registrationExpires; TransportTypes? transportType; String? localIP; int? localPort; String? sipServer; int? sipServerPort; String? outboundServer; int? outboundServerPort; String? stunServer; int? stunPort; String? audioPlaybackDeviceName; String? audioRecordingDeviceName; List? audioCodecs; DtmfMethods? dtmfMethod; ThirdPartySipAccountSettings({this.number,this.agent,this.authName,this.userName,this.displayName,this.password,this.userDomain,this.registrationExpires,this.transportType,this.localIP,this.localPort,this.sipServer,this.sipServerPort,this.outboundServer,this.outboundServerPort,this.stunServer,this.stunPort,this.audioPlaybackDeviceName,this.audioRecordingDeviceName,this.audioCodecs,this.dtmfMethod}); ThirdPartySipAccountSettings.fromJson(Map json) { fromMap(json); } fromMap(Map json) { number = json['number']; agent = json['agent']; authName = json['authName']; userName = json['userName']; displayName = json['displayName']; password = json['password']; userDomain = json['userDomain']; registrationExpires = json['registrationExpires']; transportType = JsonConverters.fromJson(json['transportType'],'TransportTypes',context!); localIP = json['localIP']; localPort = json['localPort']; sipServer = json['sipServer']; sipServerPort = json['sipServerPort']; outboundServer = json['outboundServer']; outboundServerPort = json['outboundServerPort']; stunServer = json['stunServer']; stunPort = json['stunPort']; audioPlaybackDeviceName = json['audioPlaybackDeviceName']; audioRecordingDeviceName = json['audioRecordingDeviceName']; audioCodecs = JsonConverters.fromJson(json['audioCodecs'],'List',context!); dtmfMethod = JsonConverters.fromJson(json['dtmfMethod'],'DtmfMethods',context!); return this; } Map toJson() => { 'number': number, 'agent': agent, 'authName': authName, 'userName': userName, 'displayName': displayName, 'password': password, 'userDomain': userDomain, 'registrationExpires': registrationExpires, 'transportType': JsonConverters.toJson(transportType,'TransportTypes',context!), 'localIP': localIP, 'localPort': localPort, 'sipServer': sipServer, 'sipServerPort': sipServerPort, 'outboundServer': outboundServer, 'outboundServerPort': outboundServerPort, 'stunServer': stunServer, 'stunPort': stunPort, 'audioPlaybackDeviceName': audioPlaybackDeviceName, 'audioRecordingDeviceName': audioRecordingDeviceName, 'audioCodecs': JsonConverters.toJson(audioCodecs,'List',context!), 'dtmfMethod': JsonConverters.toJson(dtmfMethod,'DtmfMethods',context!) }; getTypeName() => "ThirdPartySipAccountSettings"; TypeContext? context = _ctx; } class ThirdPartySipSettings implements IConvertible { List? accounts; ThirdPartySipSettings({this.accounts}); ThirdPartySipSettings.fromJson(Map json) { fromMap(json); } fromMap(Map json) { accounts = JsonConverters.fromJson(json['accounts'],'List',context!); return this; } Map toJson() => { 'accounts': JsonConverters.toJson(accounts,'List',context!) }; getTypeName() => "ThirdPartySipSettings"; TypeContext? context = _ctx; } class ThirdPartyDemoSettings implements IConvertible { String? extension; ThirdPartyDemoSettings({this.extension}); ThirdPartyDemoSettings.fromJson(Map json) { fromMap(json); } fromMap(Map json) { extension = json['extension']; return this; } Map toJson() => { 'extension': extension }; getTypeName() => "ThirdPartyDemoSettings"; TypeContext? context = _ctx; } class ThirdPartyPhoneSystemSettings implements IConvertible { ThirdPartyPhoneSystemTypes? type; ThirdPartySipSettings? sipSettings; ThirdPartyDemoSettings? demoSettings; ThirdPartyPhoneSystemSettings({this.type,this.sipSettings,this.demoSettings}); ThirdPartyPhoneSystemSettings.fromJson(Map json) { fromMap(json); } fromMap(Map json) { type = JsonConverters.fromJson(json['type'],'ThirdPartyPhoneSystemTypes',context!); sipSettings = JsonConverters.fromJson(json['sipSettings'],'ThirdPartySipSettings',context!); demoSettings = JsonConverters.fromJson(json['demoSettings'],'ThirdPartyDemoSettings',context!); return this; } Map toJson() => { 'type': JsonConverters.toJson(type,'ThirdPartyPhoneSystemTypes',context!), 'sipSettings': JsonConverters.toJson(sipSettings,'ThirdPartySipSettings',context!), 'demoSettings': JsonConverters.toJson(demoSettings,'ThirdPartyDemoSettings',context!) }; getTypeName() => "ThirdPartyPhoneSystemSettings"; TypeContext? context = _ctx; } enum EndpointTypes { PhoneNumber, User, FaxNumber, EmailAddress, Unused_1, Unused_2, Unused_3, Unused_4, Unused_5, Team, } enum AgentStates { Unknown, Ready, NotReady, LoggedOut, WrapUp, Outgoing, Other, } enum TagColors { Magenta, Red, Volcano, Orange, Gold, Lime, Green, Cyan, Blue, GeekBlue, Purple, } class Tag implements IConvertible { String? id; String? name; TagColors? color; Tag({this.id,this.name,this.color}); Tag.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; name = json['name']; color = JsonConverters.fromJson(json['color'],'TagColors',context!); return this; } Map toJson() => { 'id': id, 'name': name, 'color': JsonConverters.toJson(color,'TagColors',context!) }; getTypeName() => "Tag"; TypeContext? context = _ctx; } abstract class EntityInfo { /** * The ID of the object */ // @ApiMember(Description="The ID of the object") String? id; /** * The date the object was created */ // @ApiMember(Description="The date the object was created") String? dateCreated; /** * The date the object was last modified */ // @ApiMember(Description="The date the object was last modified") String? dateLastModified; /** * The user that created this object */ // @ApiMember(Description="The user that created this object") String? createdBy; /** * The user that last modified this object */ // @ApiMember(Description="The user that last modified this object") String? lastModifiedBy; EntityInfo({this.id,this.dateCreated,this.dateLastModified,this.createdBy,this.lastModifiedBy}); EntityInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; dateCreated = json['dateCreated']; dateLastModified = json['dateLastModified']; createdBy = json['createdBy']; lastModifiedBy = json['lastModifiedBy']; return this; } Map toJson() => { 'id': id, 'dateCreated': dateCreated, 'dateLastModified': dateLastModified, 'createdBy': createdBy, 'lastModifiedBy': lastModifiedBy }; getTypeName() => "EntityInfo"; TypeContext? context = _ctx; } class CustomerBreadcrumb implements IConvertible { String? id; String? name; CustomerBreadcrumb({this.id,this.name}); CustomerBreadcrumb.fromJson(Map json) { fromMap(json); } fromMap(Map json) { id = json['id']; name = json['name']; return this; } Map toJson() => { 'id': id, 'name': name }; getTypeName() => "CustomerBreadcrumb"; TypeContext? context = _ctx; } enum AgentStateReasons { Unknown, SetByUser, MissedCall, SetBySystem, } class IntegrationData implements IConvertible { String? thirdPartyId; IntegrationData({this.thirdPartyId}); IntegrationData.fromJson(Map json) { fromMap(json); } fromMap(Map json) { thirdPartyId = json['thirdPartyId']; return this; } Map toJson() => { 'thirdPartyId': thirdPartyId }; getTypeName() => "IntegrationData"; TypeContext? context = _ctx; } class EntityIntegrationData extends Map implements IConvertible { EntityIntegrationData(); EntityIntegrationData.fromJson(Map json) : super.fromJson(json); fromMap(Map json) { super.fromMap(json); return this; } Map toJson() => super.toJson(); getTypeName() => "EntityIntegrationData"; TypeContext? context = _ctx; } class Schedule implements IConvertible { String? timeZoneId; bool? inherit; bool? forceClosed; List? rules; String? defaultState; Schedule({this.timeZoneId,this.inherit,this.forceClosed,this.rules,this.defaultState}); Schedule.fromJson(Map json) { fromMap(json); } fromMap(Map json) { timeZoneId = json['timeZoneId']; inherit = json['inherit']; forceClosed = json['forceClosed']; rules = JsonConverters.fromJson(json['rules'],'List',context!); defaultState = json['defaultState']; return this; } Map toJson() => { 'timeZoneId': timeZoneId, 'inherit': inherit, 'forceClosed': forceClosed, 'rules': JsonConverters.toJson(rules,'List',context!), 'defaultState': defaultState }; getTypeName() => "Schedule"; TypeContext? context = _ctx; } class EndpointInfo extends EntityInfo implements IConvertible { /** * The account ID this endpoint is associated with */ // @ApiMember(Description="The account ID this endpoint is associated with") String? accountId; /** * The name of the account this endpoint is associated with */ // @ApiMember(Description="The name of the account this endpoint is associated with") String? accountName; /** * The ID of the customer this endpoint is associated with */ // @ApiMember(Description="The ID of the customer this endpoint is associated with") String? customerId; /** * The name of the customer this endpoint is associated with */ // @ApiMember(Description="The name of the customer this endpoint is associated with") String? customerName; /** * The third party reference ID for the endpoint */ // @ApiMember(Description="The third party reference ID for the endpoint") String? referenceId; /** * The breadcrumb to the customer for this endpoint */ // @ApiMember(Description="The breadcrumb to the customer for this endpoint") List? customerBreadcrumb; /** * The display name of the endpoint */ // @ApiMember(Description="The display name of the endpoint") String? displayName; /** * The type of endpoint */ // @ApiMember(Description="The type of endpoint") EndpointTypes? type; /** * Extra info for this endpoint (typically to show in grid) */ // @ApiMember(Description="Extra info for this endpoint (typically to show in grid)") String? extraInformation; /** * The ID of the flow to use for voice */ // @ApiMember(Description="The ID of the flow to use for voice") String? flowId; /** * The name of the flow to use for voice */ // @ApiMember(Description="The name of the flow to use for voice") String? flowName; /** * The params for the voice flow */ // @ApiMember(Description="The params for the voice flow") Struct? flowParams; /** * Whether to use a single flow always or use scheduled flow system */ // @ApiMember(Description="Whether to use a single flow always or use scheduled flow system") EndpointFlowSchedules? flowSchedule; /** * This endpoint's schedule */ // @ApiMember(Description="This endpoint's schedule") Schedule? schedule; /** * The list of scheduled flows when using scheduling */ // @ApiMember(Description="The list of scheduled flows when using scheduling") List? scheduledFlows; /** * Disable SMS */ // @ApiMember(Description="Disable SMS") bool? disableSms; /** * Set this to true to prevent Evo Voice from overriding the 10DLC / SMS settings for this number */ // @ApiMember(Description="Set this to true to prevent Evo Voice from overriding the 10DLC / SMS settings for this number") bool? useExternal10DlcCampaign; /** * Is this a virtual phone number? */ // @ApiMember(Description="Is this a virtual phone number?") bool? isVirtualPhoneNumber; /** * Is caller ID verified for this virtual number? */ // @ApiMember(Description="Is caller ID verified for this virtual number?") bool? isCallerIdVerified; /** * The verification code for this number */ // @ApiMember(Description="The verification code for this number") String? callerIdVerificationCode; /** * The phone number */ // @ApiMember(Description="The phone number") String? phoneNumber; /** * The Sid of the phone number */ // @ApiMember(Description="The Sid of the phone number") String? phoneNumberSid; /** * The caller ID Name (CNAM) for the phone number */ // @ApiMember(Description="The caller ID Name (CNAM) for the phone number") String? callerIdName; /** * The address SID associated with the phone number */ // @ApiMember(Description="The address SID associated with the phone number") String? addressSid; /** * Do not touch this phone number - for BYOA accounts */ // @ApiMember(Description="Do not touch this phone number - for BYOA accounts") bool? doNotTouchPhoneNumber; /** * Is this number enrolled in a 10DLC messaging service campaign */ // @ApiMember(Description="Is this number enrolled in a 10DLC messaging service campaign") bool? isEnrolledIn10DlcService; /** * Whether we look up caller ID or not */ // @ApiMember(Description="Whether we look up caller ID or not") bool? enableCallerIdLookup; /** * The email address of the user */ // @ApiMember(Description="The email address of the user") String? userEmailAddress; /** * The Twilio Region for the SIP endpoint */ // @ApiMember(Description="The Twilio Region for the SIP endpoint") TwilioSipRegions? sipRegion; /** * The Twilio Sid of the credentials for Sip */ // @ApiMember(Description="The Twilio Sid of the credentials for Sip") String? sipCredentialSid; /** * The Twilio SIP user name */ // @ApiMember(Description="The Twilio SIP user name") String? sipUserName; /** * The Twilio SIP password */ // @ApiMember(Description="The Twilio SIP password") String? sipPassword; /** * The SIP domain */ // @ApiMember(Description="The SIP domain") String? sipDomain; /** * Is emergency calling enabled on this number? */ // @ApiMember(Description="Is emergency calling enabled on this number?") bool? enableEmergencyCalling; /** * The SID of the emergency address for this number */ // @ApiMember(Description="The SID of the emergency address for this number") String? emergencyAddressSid; /** * The ID of the phone number to use for emergency dialing */ // @ApiMember(Description="The ID of the phone number to use for emergency dialing") String? emergencyPhoneNumberId; /** * The current agent state of this user endpoint */ // @ApiMember(Description="The current agent state of this user endpoint") AgentStates? agentState; /** * The current agent state reason of this user endpoint */ // @ApiMember(Description="The current agent state reason of this user endpoint") AgentStateReasons? agentStateReason; /** * The mode for this user */ // @ApiMember(Description="The mode for this user") UserModes? userMode; /** * The ID of the file to use for voicemail greeting */ // @ApiMember(Description="The ID of the file to use for voicemail greeting") String? voicemailGreetingId; /** * The endpoint's data */ // @ApiMember(Description="The endpoint's data") Struct? data; /** * The email address for email endpoints */ // @ApiMember(Description="The email address for email endpoints") String? emailAddress; /** * The first name of the user (for user endpoints) */ // @ApiMember(Description="The first name of the user (for user endpoints)") String? userFirstName; /** * The last name of the user (for user endpoints) */ // @ApiMember(Description="The last name of the user (for user endpoints)") String? userLastName; /** * The URL of an image for this user's avatar */ // @ApiMember(Description="The URL of an image for this user's avatar") String? avatarUrl; /** * Does this user have manager role? */ // @ApiMember(Description="Does this user have manager role?") UserManagerRoles? managerRole; /** * The list of dashboard permissions for when the manager role is custom */ // @ApiMember(Description="The list of dashboard permissions for when the manager role is custom") List? dashboardPermissions; /** * The type of visibility this user has to their own fields */ // @ApiMember(Description="The type of visibility this user has to their own fields") UserDataFieldModes? myFieldPermissions; /** * The type of visibility this user has to customer fields */ // @ApiMember(Description="The type of visibility this user has to customer fields") UserDataFieldModes? customerFieldPermissions; /** * The type of visibility this user has to other user fields */ // @ApiMember(Description="The type of visibility this user has to other user fields") UserDataFieldModes? otherUserFieldPermissions; /** * The type of visibility this user has to other endpoint fields */ // @ApiMember(Description="The type of visibility this user has to other endpoint fields") UserDataFieldModes? otherEndpointFieldPermissions; /** * The name of this endpoint (for bots etc.) */ // @ApiMember(Description="The name of this endpoint (for bots etc.)") String? name; /** * The list of tags for this endpoint */ // @ApiMember(Description="The list of tags for this endpoint") List? tags; /** * The list of action URLs */ // @ApiMember(Description="The list of action URLs") List? actionUrls; /** * The list of members in this team */ // @ApiMember(Description="The list of members in this team") List? teamMemberIds; /** * Visibility of this user/team in contact lists */ // @ApiMember(Description="Visibility of this user/team in contact lists") CustomerVisibility? contactListVisibility; /** * The list of contacts personal to this user */ // @ApiMember(Description="The list of contacts personal to this user") List? contacts; /** * The documo ID for this number */ // @ApiMember(Description="The documo ID for this number") String? documoId; /** * Integration data for this endpoint */ // @ApiMember(Description="Integration data for this endpoint") EntityIntegrationData? integrationData; /** * Settings for third party phone system */ // @ApiMember(Description="Settings for third party phone system") ThirdPartyPhoneSystemSettings? thirdPartyPhoneSystemSettings; /** * Should this user override the parent customer's app settings */ // @ApiMember(Description="Should this user override the parent customer's app settings") bool? overrideAppSettings; /** * App / Portal settings for this user */ // @ApiMember(Description="App / Portal settings for this user") AppSettings? appSettings; EndpointInfo({this.accountId,this.accountName,this.customerId,this.customerName,this.referenceId,this.customerBreadcrumb,this.displayName,this.type,this.extraInformation,this.flowId,this.flowName,this.flowParams,this.flowSchedule,this.schedule,this.scheduledFlows,this.disableSms,this.useExternal10DlcCampaign,this.isVirtualPhoneNumber,this.isCallerIdVerified,this.callerIdVerificationCode,this.phoneNumber,this.phoneNumberSid,this.callerIdName,this.addressSid,this.doNotTouchPhoneNumber,this.isEnrolledIn10DlcService,this.enableCallerIdLookup,this.userEmailAddress,this.sipRegion,this.sipCredentialSid,this.sipUserName,this.sipPassword,this.sipDomain,this.enableEmergencyCalling,this.emergencyAddressSid,this.emergencyPhoneNumberId,this.agentState,this.agentStateReason,this.userMode,this.voicemailGreetingId,this.data,this.emailAddress,this.userFirstName,this.userLastName,this.avatarUrl,this.managerRole,this.dashboardPermissions,this.myFieldPermissions,this.customerFieldPermissions,this.otherUserFieldPermissions,this.otherEndpointFieldPermissions,this.name,this.tags,this.actionUrls,this.teamMemberIds,this.contactListVisibility,this.contacts,this.documoId,this.integrationData,this.thirdPartyPhoneSystemSettings,this.overrideAppSettings,this.appSettings}); EndpointInfo.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); accountId = json['accountId']; accountName = json['accountName']; customerId = json['customerId']; customerName = json['customerName']; referenceId = json['referenceId']; customerBreadcrumb = JsonConverters.fromJson(json['customerBreadcrumb'],'List',context!); displayName = json['displayName']; type = JsonConverters.fromJson(json['type'],'EndpointTypes',context!); extraInformation = json['extraInformation']; flowId = json['flowId']; flowName = json['flowName']; flowParams = JsonConverters.fromJson(json['flowParams'],'Struct',context!); flowSchedule = JsonConverters.fromJson(json['flowSchedule'],'EndpointFlowSchedules',context!); schedule = JsonConverters.fromJson(json['schedule'],'Schedule',context!); scheduledFlows = JsonConverters.fromJson(json['scheduledFlows'],'List',context!); disableSms = json['disableSms']; useExternal10DlcCampaign = json['useExternal10DlcCampaign']; isVirtualPhoneNumber = json['isVirtualPhoneNumber']; isCallerIdVerified = json['isCallerIdVerified']; callerIdVerificationCode = json['callerIdVerificationCode']; phoneNumber = json['phoneNumber']; phoneNumberSid = json['phoneNumberSid']; callerIdName = json['callerIdName']; addressSid = json['addressSid']; doNotTouchPhoneNumber = json['doNotTouchPhoneNumber']; isEnrolledIn10DlcService = json['isEnrolledIn10DlcService']; enableCallerIdLookup = json['enableCallerIdLookup']; userEmailAddress = json['userEmailAddress']; sipRegion = JsonConverters.fromJson(json['sipRegion'],'TwilioSipRegions',context!); sipCredentialSid = json['sipCredentialSid']; sipUserName = json['sipUserName']; sipPassword = json['sipPassword']; sipDomain = json['sipDomain']; enableEmergencyCalling = json['enableEmergencyCalling']; emergencyAddressSid = json['emergencyAddressSid']; emergencyPhoneNumberId = json['emergencyPhoneNumberId']; agentState = JsonConverters.fromJson(json['agentState'],'AgentStates',context!); agentStateReason = JsonConverters.fromJson(json['agentStateReason'],'AgentStateReasons',context!); userMode = JsonConverters.fromJson(json['userMode'],'UserModes',context!); voicemailGreetingId = json['voicemailGreetingId']; data = JsonConverters.fromJson(json['data'],'Struct',context!); emailAddress = json['emailAddress']; userFirstName = json['userFirstName']; userLastName = json['userLastName']; avatarUrl = json['avatarUrl']; managerRole = JsonConverters.fromJson(json['managerRole'],'UserManagerRoles',context!); dashboardPermissions = JsonConverters.fromJson(json['dashboardPermissions'],'List',context!); myFieldPermissions = JsonConverters.fromJson(json['myFieldPermissions'],'UserDataFieldModes',context!); customerFieldPermissions = JsonConverters.fromJson(json['customerFieldPermissions'],'UserDataFieldModes',context!); otherUserFieldPermissions = JsonConverters.fromJson(json['otherUserFieldPermissions'],'UserDataFieldModes',context!); otherEndpointFieldPermissions = JsonConverters.fromJson(json['otherEndpointFieldPermissions'],'UserDataFieldModes',context!); name = json['name']; tags = JsonConverters.fromJson(json['tags'],'List',context!); actionUrls = JsonConverters.fromJson(json['actionUrls'],'List',context!); teamMemberIds = JsonConverters.fromJson(json['teamMemberIds'],'List',context!); contactListVisibility = JsonConverters.fromJson(json['contactListVisibility'],'CustomerVisibility',context!); contacts = JsonConverters.fromJson(json['contacts'],'List',context!); documoId = json['documoId']; integrationData = JsonConverters.fromJson(json['integrationData'],'EntityIntegrationData',context!); thirdPartyPhoneSystemSettings = JsonConverters.fromJson(json['thirdPartyPhoneSystemSettings'],'ThirdPartyPhoneSystemSettings',context!); overrideAppSettings = json['overrideAppSettings']; appSettings = JsonConverters.fromJson(json['appSettings'],'AppSettings',context!); return this; } Map toJson() => super.toJson()..addAll({ 'accountId': accountId, 'accountName': accountName, 'customerId': customerId, 'customerName': customerName, 'referenceId': referenceId, 'customerBreadcrumb': JsonConverters.toJson(customerBreadcrumb,'List',context!), 'displayName': displayName, 'type': JsonConverters.toJson(type,'EndpointTypes',context!), 'extraInformation': extraInformation, 'flowId': flowId, 'flowName': flowName, 'flowParams': JsonConverters.toJson(flowParams,'Struct',context!), 'flowSchedule': JsonConverters.toJson(flowSchedule,'EndpointFlowSchedules',context!), 'schedule': JsonConverters.toJson(schedule,'Schedule',context!), 'scheduledFlows': JsonConverters.toJson(scheduledFlows,'List',context!), 'disableSms': disableSms, 'useExternal10DlcCampaign': useExternal10DlcCampaign, 'isVirtualPhoneNumber': isVirtualPhoneNumber, 'isCallerIdVerified': isCallerIdVerified, 'callerIdVerificationCode': callerIdVerificationCode, 'phoneNumber': phoneNumber, 'phoneNumberSid': phoneNumberSid, 'callerIdName': callerIdName, 'addressSid': addressSid, 'doNotTouchPhoneNumber': doNotTouchPhoneNumber, 'isEnrolledIn10DlcService': isEnrolledIn10DlcService, 'enableCallerIdLookup': enableCallerIdLookup, 'userEmailAddress': userEmailAddress, 'sipRegion': JsonConverters.toJson(sipRegion,'TwilioSipRegions',context!), 'sipCredentialSid': sipCredentialSid, 'sipUserName': sipUserName, 'sipPassword': sipPassword, 'sipDomain': sipDomain, 'enableEmergencyCalling': enableEmergencyCalling, 'emergencyAddressSid': emergencyAddressSid, 'emergencyPhoneNumberId': emergencyPhoneNumberId, 'agentState': JsonConverters.toJson(agentState,'AgentStates',context!), 'agentStateReason': JsonConverters.toJson(agentStateReason,'AgentStateReasons',context!), 'userMode': JsonConverters.toJson(userMode,'UserModes',context!), 'voicemailGreetingId': voicemailGreetingId, 'data': JsonConverters.toJson(data,'Struct',context!), 'emailAddress': emailAddress, 'userFirstName': userFirstName, 'userLastName': userLastName, 'avatarUrl': avatarUrl, 'managerRole': JsonConverters.toJson(managerRole,'UserManagerRoles',context!), 'dashboardPermissions': JsonConverters.toJson(dashboardPermissions,'List',context!), 'myFieldPermissions': JsonConverters.toJson(myFieldPermissions,'UserDataFieldModes',context!), 'customerFieldPermissions': JsonConverters.toJson(customerFieldPermissions,'UserDataFieldModes',context!), 'otherUserFieldPermissions': JsonConverters.toJson(otherUserFieldPermissions,'UserDataFieldModes',context!), 'otherEndpointFieldPermissions': JsonConverters.toJson(otherEndpointFieldPermissions,'UserDataFieldModes',context!), 'name': name, 'tags': JsonConverters.toJson(tags,'List',context!), 'actionUrls': JsonConverters.toJson(actionUrls,'List',context!), 'teamMemberIds': JsonConverters.toJson(teamMemberIds,'List',context!), 'contactListVisibility': JsonConverters.toJson(contactListVisibility,'CustomerVisibility',context!), 'contacts': JsonConverters.toJson(contacts,'List',context!), 'documoId': documoId, 'integrationData': JsonConverters.toJson(integrationData,'EntityIntegrationData',context!), 'thirdPartyPhoneSystemSettings': JsonConverters.toJson(thirdPartyPhoneSystemSettings,'ThirdPartyPhoneSystemSettings',context!), 'overrideAppSettings': overrideAppSettings, 'appSettings': JsonConverters.toJson(appSettings,'AppSettings',context!) }); getTypeName() => "EndpointInfo"; TypeContext? context = _ctx; } /** * Buys the specified phone number */ // @Route("/endpoints/phone-numbers", "POST") // @Api(Description="Buys the specified phone number") class BuyPhoneNumber implements IReturn, IPost, IConvertible { /** * The ID of the account to associate the number with */ // @ApiMember(Description="The ID of the account to associate the number with") String? accountId; /** * The ID of the customer to associate this number with */ // @ApiMember(Description="The ID of the customer to associate this number with") String? customerId; /** * The number to buy/create */ // @ApiMember(Description="The number to buy/create") String? number; /** * Is this number virtual? If so we will not buy but just create an entry */ // @ApiMember(Description="Is this number virtual? If so we will not buy but just create an entry") bool? isVirtualPhoneNumber; /** * Is this a fax number? */ // @ApiMember(Description="Is this a fax number?") bool? isFaxNumber; /** * The address SID to associate with the phone number */ // @ApiMember(Description="The address SID to associate with the phone number") String? addressSid; /** * The list of tags to associate with the new endpoint */ // @ApiMember(Description="The list of tags to associate with the new endpoint") List? tagIds; /** * Data values for this endpoint */ // @ApiMember(Description="Data values for this endpoint") Struct? data; /** * Specify the flow to use */ // @ApiMember(Description="Specify the flow to use") String? flowId; /** * The flow params */ // @ApiMember(Description="The flow params") Struct? flowParams; BuyPhoneNumber({this.accountId,this.customerId,this.number,this.isVirtualPhoneNumber,this.isFaxNumber,this.addressSid,this.tagIds,this.data,this.flowId,this.flowParams}); BuyPhoneNumber.fromJson(Map json) { fromMap(json); } fromMap(Map json) { accountId = json['accountId']; customerId = json['customerId']; number = json['number']; isVirtualPhoneNumber = json['isVirtualPhoneNumber']; isFaxNumber = json['isFaxNumber']; addressSid = json['addressSid']; tagIds = JsonConverters.fromJson(json['tagIds'],'List',context!); data = JsonConverters.fromJson(json['data'],'Struct',context!); flowId = json['flowId']; flowParams = JsonConverters.fromJson(json['flowParams'],'Struct',context!); return this; } Map toJson() => { 'accountId': accountId, 'customerId': customerId, 'number': number, 'isVirtualPhoneNumber': isVirtualPhoneNumber, 'isFaxNumber': isFaxNumber, 'addressSid': addressSid, 'tagIds': JsonConverters.toJson(tagIds,'List',context!), 'data': JsonConverters.toJson(data,'Struct',context!), 'flowId': flowId, 'flowParams': JsonConverters.toJson(flowParams,'Struct',context!) }; createResponse() => EndpointInfo(); getResponseTypeName() => "EndpointInfo"; getTypeName() => "BuyPhoneNumber"; TypeContext? context = _ctx; } TypeContext _ctx = TypeContext(library: 'evovoice.io', types: { 'ActionUrlHttpMethods': TypeInfo(TypeOf.Enum, enumValues:ActionUrlHttpMethods.values), 'Struct': TypeInfo(TypeOf.Class, create:() => Struct()), 'Value': TypeInfo(TypeOf.Class, create:() => Value()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'AppSettings': TypeInfo(TypeOf.Class, create:() => AppSettings()), 'UserModes': TypeInfo(TypeOf.Enum, enumValues:UserModes.values), 'EndpointFlowSchedules': TypeInfo(TypeOf.Enum, enumValues:EndpointFlowSchedules.values), 'ScheduledFlow': TypeInfo(TypeOf.Class, create:() => ScheduledFlow()), 'TwilioSipRegions': TypeInfo(TypeOf.Enum, enumValues:TwilioSipRegions.values), 'UserManagerRoles': TypeInfo(TypeOf.Enum, enumValues:UserManagerRoles.values), 'DashboardPermissions': TypeInfo(TypeOf.Enum, enumValues:DashboardPermissions.values), 'UserDataFieldModes': TypeInfo(TypeOf.Enum, enumValues:UserDataFieldModes.values), 'CustomerVisibility': TypeInfo(TypeOf.Enum, enumValues:CustomerVisibility.values), 'EndpointActionUrl': TypeInfo(TypeOf.Class, create:() => EndpointActionUrl()), 'EndpointContact': TypeInfo(TypeOf.Class, create:() => EndpointContact()), 'ThirdPartyPhoneSystemTypes': TypeInfo(TypeOf.Enum, enumValues:ThirdPartyPhoneSystemTypes.values), 'TransportTypes': TypeInfo(TypeOf.Enum, enumValues:TransportTypes.values), 'AudioCodecTypes': TypeInfo(TypeOf.Enum, enumValues:AudioCodecTypes.values), 'DtmfMethods': TypeInfo(TypeOf.Enum, enumValues:DtmfMethods.values), 'ThirdPartySipAccountSettings': TypeInfo(TypeOf.Class, create:() => ThirdPartySipAccountSettings()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ThirdPartySipSettings': TypeInfo(TypeOf.Class, create:() => ThirdPartySipSettings()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'ThirdPartyDemoSettings': TypeInfo(TypeOf.Class, create:() => ThirdPartyDemoSettings()), 'ThirdPartyPhoneSystemSettings': TypeInfo(TypeOf.Class, create:() => ThirdPartyPhoneSystemSettings()), 'EndpointTypes': TypeInfo(TypeOf.Enum, enumValues:EndpointTypes.values), 'AgentStates': TypeInfo(TypeOf.Enum, enumValues:AgentStates.values), 'TagColors': TypeInfo(TypeOf.Enum, enumValues:TagColors.values), 'Tag': TypeInfo(TypeOf.Class, create:() => Tag()), 'EntityInfo': TypeInfo(TypeOf.AbstractClass), 'CustomerBreadcrumb': TypeInfo(TypeOf.Class, create:() => CustomerBreadcrumb()), 'AgentStateReasons': TypeInfo(TypeOf.Enum, enumValues:AgentStateReasons.values), 'IntegrationData': TypeInfo(TypeOf.Class, create:() => IntegrationData()), 'EntityIntegrationData': TypeInfo(TypeOf.Class, create:() => EntityIntegrationData()), 'Schedule': TypeInfo(TypeOf.Class, create:() => Schedule()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'SchedulingRule': TypeInfo(TypeOf.Class, create:() => SchedulingRule()), 'EndpointInfo': TypeInfo(TypeOf.Class, create:() => EndpointInfo()), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'List': TypeInfo(TypeOf.Class, create:() => []), 'BuyPhoneNumber': TypeInfo(TypeOf.Class, create:() => BuyPhoneNumber()), });