POST | /portal/assistants |
---|
"use strict";
export class EntityInfo {
/** @param {{id?:string,dateCreated?:string,dateLastModified?:string,createdBy?:string,lastModifiedBy?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {string}
* @description The ID of the object */
id;
/**
* @type {string}
* @description The date the object was created */
dateCreated;
/**
* @type {string}
* @description The date the object was last modified */
dateLastModified;
/**
* @type {string}
* @description The user that created this object */
createdBy;
/**
* @type {string}
* @description The user that last modified this object */
lastModifiedBy;
}
export class CustomerBreadcrumb {
/** @param {{id?:string,name?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
name;
}
/** @typedef {'PhoneNumber'|'User'|'FaxNumber'|'EmailAddress'|'Unused_1'|'Unused_2'|'Unused_3'|'Unused_4'|'Unused_5'|'Team'|'Assistant'} */
export var EndpointTypes;
(function (EndpointTypes) {
EndpointTypes["PhoneNumber"] = "PhoneNumber"
EndpointTypes["User"] = "User"
EndpointTypes["FaxNumber"] = "FaxNumber"
EndpointTypes["EmailAddress"] = "EmailAddress"
EndpointTypes["Unused_1"] = "Unused_1"
EndpointTypes["Unused_2"] = "Unused_2"
EndpointTypes["Unused_3"] = "Unused_3"
EndpointTypes["Unused_4"] = "Unused_4"
EndpointTypes["Unused_5"] = "Unused_5"
EndpointTypes["Team"] = "Team"
EndpointTypes["Assistant"] = "Assistant"
})(EndpointTypes || (EndpointTypes = {}));
export class Value {
/** @param {{boolValue?:boolean,stringValue?:string,numberValue?:number,listValue?:Struct[],structValue?:Struct}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?boolean} */
boolValue;
/** @type {string} */
stringValue;
/** @type {?number} */
numberValue;
/** @type {Struct[]} */
listValue;
/** @type {Struct} */
structValue;
}
class Dictionary {}
export class Struct extends Dictionary {
constructor(init) { super(init); Object.assign(this, init) }
}
/** @typedef {'Always'|'Scheduled'|'Simple'} */
export var EndpointFlowSchedules;
(function (EndpointFlowSchedules) {
EndpointFlowSchedules["Always"] = "Always"
EndpointFlowSchedules["Scheduled"] = "Scheduled"
EndpointFlowSchedules["Simple"] = "Simple"
})(EndpointFlowSchedules || (EndpointFlowSchedules = {}));
/** @typedef {'Always'|'CustomerState'|'Time'} */
export var SimpleSchedulingRuleTypes;
(function (SimpleSchedulingRuleTypes) {
SimpleSchedulingRuleTypes["Always"] = "Always"
SimpleSchedulingRuleTypes["CustomerState"] = "CustomerState"
SimpleSchedulingRuleTypes["Time"] = "Time"
})(SimpleSchedulingRuleTypes || (SimpleSchedulingRuleTypes = {}));
export class ScheduleDay {
/** @param {{offset?:number,dayOfWeek?:DayOfWeek}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
offset;
/** @type {DayOfWeek} */
dayOfWeek;
}
/** @typedef {'None'|'Secondly'|'Minutely'|'Hourly'|'Daily'|'Weekly'|'Monthly'|'Yearly'} */
export var SchedulingRuleFrequency;
(function (SchedulingRuleFrequency) {
SchedulingRuleFrequency["None"] = "None"
SchedulingRuleFrequency["Secondly"] = "Secondly"
SchedulingRuleFrequency["Minutely"] = "Minutely"
SchedulingRuleFrequency["Hourly"] = "Hourly"
SchedulingRuleFrequency["Daily"] = "Daily"
SchedulingRuleFrequency["Weekly"] = "Weekly"
SchedulingRuleFrequency["Monthly"] = "Monthly"
SchedulingRuleFrequency["Yearly"] = "Yearly"
})(SchedulingRuleFrequency || (SchedulingRuleFrequency = {}));
export class SchedulingRule {
/** @param {{id?:string,name?:string,priority?:number,state?:string,source?:string,condition?:string,simpleRuleType?:SimpleSchedulingRuleTypes,customerState?:string,flowId?:string,flowParams?:Struct,isAllDay?:boolean,startDate?:string,startTime?:string,endTime?:string,bySetPosition?:number[],byMonth?:number[],byWeekNo?:number[],byYearDay?:number[],byMonthDay?:number[],byDay?:ScheduleDay[],byHour?:number[],byMinute?:number[],interval?:number,count?:number,untilDate?:string,frequency?:SchedulingRuleFrequency}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
name;
/** @type {number} */
priority;
/** @type {string} */
state;
/** @type {string} */
source;
/** @type {string} */
condition;
/** @type {SimpleSchedulingRuleTypes} */
simpleRuleType;
/** @type {string} */
customerState;
/** @type {string} */
flowId;
/** @type {Struct} */
flowParams;
/** @type {boolean} */
isAllDay;
/** @type {string} */
startDate;
/** @type {string} */
startTime;
/** @type {string} */
endTime;
/** @type {number[]} */
bySetPosition;
/** @type {number[]} */
byMonth;
/** @type {number[]} */
byWeekNo;
/** @type {number[]} */
byYearDay;
/** @type {number[]} */
byMonthDay;
/** @type {ScheduleDay[]} */
byDay;
/** @type {number[]} */
byHour;
/** @type {number[]} */
byMinute;
/** @type {number} */
interval;
/** @type {number} */
count;
/** @type {string} */
untilDate;
/** @type {SchedulingRuleFrequency} */
frequency;
}
export class Schedule {
/** @param {{timeZoneId?:string,inherit?:boolean,forceClosed?:boolean,rules?:SchedulingRule[],defaultState?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
timeZoneId;
/** @type {boolean} */
inherit;
/** @type {boolean} */
forceClosed;
/** @type {SchedulingRule[]} */
rules;
/** @type {string} */
defaultState;
}
export class ScheduledFlow {
/** @param {{stateName?:string,flowId?:string,flowParams?:Struct}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
stateName;
/** @type {string} */
flowId;
/** @type {Struct} */
flowParams;
}
/** @typedef {'NorthAmericaVirginia'|'NorthAmericaOregon'|'EuropeIreland'|'EuropeFrankfurt'|'AsiaPacificSingapore'|'AsiaPacificTokyo'|'AsiaPacificSydney'|'SouthAmericaSanPaolo'} */
export var TwilioSipRegions;
(function (TwilioSipRegions) {
TwilioSipRegions["NorthAmericaVirginia"] = "NorthAmericaVirginia"
TwilioSipRegions["NorthAmericaOregon"] = "NorthAmericaOregon"
TwilioSipRegions["EuropeIreland"] = "EuropeIreland"
TwilioSipRegions["EuropeFrankfurt"] = "EuropeFrankfurt"
TwilioSipRegions["AsiaPacificSingapore"] = "AsiaPacificSingapore"
TwilioSipRegions["AsiaPacificTokyo"] = "AsiaPacificTokyo"
TwilioSipRegions["AsiaPacificSydney"] = "AsiaPacificSydney"
TwilioSipRegions["SouthAmericaSanPaolo"] = "SouthAmericaSanPaolo"
})(TwilioSipRegions || (TwilioSipRegions = {}));
/** @typedef {'Unknown'|'Ready'|'NotReady'|'LoggedOut'|'WrapUp'|'Outgoing'|'Other'} */
export var AgentStates;
(function (AgentStates) {
AgentStates["Unknown"] = "Unknown"
AgentStates["Ready"] = "Ready"
AgentStates["NotReady"] = "NotReady"
AgentStates["LoggedOut"] = "LoggedOut"
AgentStates["WrapUp"] = "WrapUp"
AgentStates["Outgoing"] = "Outgoing"
AgentStates["Other"] = "Other"
})(AgentStates || (AgentStates = {}));
/** @typedef {'Unknown'|'SetByUser'|'MissedCall'|'SetBySystem'} */
export var AgentStateReasons;
(function (AgentStateReasons) {
AgentStateReasons["Unknown"] = "Unknown"
AgentStateReasons["SetByUser"] = "SetByUser"
AgentStateReasons["MissedCall"] = "MissedCall"
AgentStateReasons["SetBySystem"] = "SetBySystem"
})(AgentStateReasons || (AgentStateReasons = {}));
/** @typedef {'SoftPhone'|'Sip'|'Flow'|'DataOnly'|'ThirdParty'} */
export var UserModes;
(function (UserModes) {
UserModes["SoftPhone"] = "SoftPhone"
UserModes["Sip"] = "Sip"
UserModes["Flow"] = "Flow"
UserModes["DataOnly"] = "DataOnly"
UserModes["ThirdParty"] = "ThirdParty"
})(UserModes || (UserModes = {}));
/** @typedef {'None'|'Manager'|'VoicemailAndCallHistory'|'Custom'} */
export var UserManagerRoles;
(function (UserManagerRoles) {
UserManagerRoles["None"] = "None"
UserManagerRoles["Manager"] = "Manager"
UserManagerRoles["VoicemailAndCallHistory"] = "VoicemailAndCallHistory"
UserManagerRoles["Custom"] = "Custom"
})(UserManagerRoles || (UserManagerRoles = {}));
/** @typedef {'ViewFiles'|'ViewNotifications'|'ViewSessions'|'ViewEndpoints'|'ViewReports'|'ViewCustomers'|'ViewFlows'} */
export var DashboardPermissions;
(function (DashboardPermissions) {
DashboardPermissions["ViewFiles"] = "ViewFiles"
DashboardPermissions["ViewNotifications"] = "ViewNotifications"
DashboardPermissions["ViewSessions"] = "ViewSessions"
DashboardPermissions["ViewEndpoints"] = "ViewEndpoints"
DashboardPermissions["ViewReports"] = "ViewReports"
DashboardPermissions["ViewCustomers"] = "ViewCustomers"
DashboardPermissions["ViewFlows"] = "ViewFlows"
})(DashboardPermissions || (DashboardPermissions = {}));
/** @typedef {'Hidden'|'ReadOnly'|'ReadWrite'} */
export var UserDataFieldModes;
(function (UserDataFieldModes) {
UserDataFieldModes["Hidden"] = "Hidden"
UserDataFieldModes["ReadOnly"] = "ReadOnly"
UserDataFieldModes["ReadWrite"] = "ReadWrite"
})(UserDataFieldModes || (UserDataFieldModes = {}));
/** @typedef {'Magenta'|'Red'|'Volcano'|'Orange'|'Gold'|'Lime'|'Green'|'Cyan'|'Blue'|'GeekBlue'|'Purple'} */
export var TagColors;
(function (TagColors) {
TagColors["Magenta"] = "Magenta"
TagColors["Red"] = "Red"
TagColors["Volcano"] = "Volcano"
TagColors["Orange"] = "Orange"
TagColors["Gold"] = "Gold"
TagColors["Lime"] = "Lime"
TagColors["Green"] = "Green"
TagColors["Cyan"] = "Cyan"
TagColors["Blue"] = "Blue"
TagColors["GeekBlue"] = "GeekBlue"
TagColors["Purple"] = "Purple"
})(TagColors || (TagColors = {}));
export class Tag {
/** @param {{id?:string,name?:string,color?:TagColors}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
name;
/** @type {TagColors} */
color;
}
/** @typedef {'GET'|'POST'} */
export var ActionUrlHttpMethods;
(function (ActionUrlHttpMethods) {
ActionUrlHttpMethods["GET"] = "GET"
ActionUrlHttpMethods["POST"] = "POST"
})(ActionUrlHttpMethods || (ActionUrlHttpMethods = {}));
export class EndpointActionUrl {
/** @param {{id?:string,url?:string,method?:ActionUrlHttpMethods}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
url;
/** @type {ActionUrlHttpMethods} */
method;
}
/** @typedef {'None'|'CurrentCustomer'|'CurrentAndChildCustomers'} */
export var CustomerVisibility;
(function (CustomerVisibility) {
CustomerVisibility["None"] = "None"
CustomerVisibility["CurrentCustomer"] = "CurrentCustomer"
CustomerVisibility["CurrentAndChildCustomers"] = "CurrentAndChildCustomers"
})(CustomerVisibility || (CustomerVisibility = {}));
export class EndpointContact {
/** @param {{id?:string,displayName?:string,address?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
id;
/** @type {string} */
displayName;
/** @type {string} */
address;
}
export class IntegrationData {
/** @param {{thirdPartyId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
thirdPartyId;
}
export class EntityIntegrationData extends Dictionary {
constructor(init) { super(init); Object.assign(this, init) }
}
/** @typedef {'Demo'|'Sip'} */
export var ThirdPartyPhoneSystemTypes;
(function (ThirdPartyPhoneSystemTypes) {
ThirdPartyPhoneSystemTypes["Demo"] = "Demo"
ThirdPartyPhoneSystemTypes["Sip"] = "Sip"
})(ThirdPartyPhoneSystemTypes || (ThirdPartyPhoneSystemTypes = {}));
/** @typedef {'UDP'|'TLS'|'TCP'|'PERS'} */
export var TransportTypes;
(function (TransportTypes) {
TransportTypes["UDP"] = "UDP"
TransportTypes["TLS"] = "TLS"
TransportTypes["TCP"] = "TCP"
TransportTypes["PERS"] = "PERS"
})(TransportTypes || (TransportTypes = {}));
/** @typedef {number} */
export var AudioCodecTypes;
(function (AudioCodecTypes) {
AudioCodecTypes[AudioCodecTypes["PCMU"] = 0] = "PCMU"
AudioCodecTypes[AudioCodecTypes["GSM"] = 3] = "GSM"
AudioCodecTypes[AudioCodecTypes["PCMA"] = 8] = "PCMA"
AudioCodecTypes[AudioCodecTypes["G722"] = 9] = "G722"
AudioCodecTypes[AudioCodecTypes["G729"] = 18] = "G729"
AudioCodecTypes[AudioCodecTypes["ILBC"] = 97] = "ILBC"
AudioCodecTypes[AudioCodecTypes["AMR"] = 98] = "AMR"
AudioCodecTypes[AudioCodecTypes["AMRWB"] = 99] = "AMRWB"
AudioCodecTypes[AudioCodecTypes["SPEEX"] = 100] = "SPEEX"
AudioCodecTypes[AudioCodecTypes["DTMF"] = 101] = "DTMF"
AudioCodecTypes[AudioCodecTypes["SPEEXWB"] = 102] = "SPEEXWB"
AudioCodecTypes[AudioCodecTypes["ISACWB"] = 103] = "ISACWB"
AudioCodecTypes[AudioCodecTypes["ISACSWB"] = 104] = "ISACSWB"
AudioCodecTypes[AudioCodecTypes["OPUS"] = 105] = "OPUS"
AudioCodecTypes[AudioCodecTypes["G7221"] = 121] = "G7221"
AudioCodecTypes[AudioCodecTypes["NONE"] = -1] = "NONE"
})(AudioCodecTypes || (AudioCodecTypes = {}));
/** @typedef {'RFC2833'|'INFO'} */
export var DtmfMethods;
(function (DtmfMethods) {
DtmfMethods["RFC2833"] = "RFC2833"
DtmfMethods["INFO"] = "INFO"
})(DtmfMethods || (DtmfMethods = {}));
export class ThirdPartySipAccountSettings {
/** @param {{number?:string,agent?:string,authName?:string,userName?:string,displayName?:string,password?:string,userDomain?:string,registrationExpires?:number,transportType?:TransportTypes,localIP?:string,localPort?:number,sipServer?:string,sipServerPort?:number,outboundServer?:string,outboundServerPort?:number,stunServer?:string,stunPort?:number,audioPlaybackDeviceName?:string,audioRecordingDeviceName?:string,audioCodecs?:AudioCodecTypes[],dtmfMethod?:DtmfMethods}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
number;
/** @type {string} */
agent;
/** @type {string} */
authName;
/** @type {string} */
userName;
/** @type {string} */
displayName;
/** @type {string} */
password;
/** @type {string} */
userDomain;
/** @type {number} */
registrationExpires;
/** @type {TransportTypes} */
transportType;
/** @type {string} */
localIP;
/** @type {number} */
localPort;
/** @type {string} */
sipServer;
/** @type {number} */
sipServerPort;
/** @type {string} */
outboundServer;
/** @type {number} */
outboundServerPort;
/** @type {string} */
stunServer;
/** @type {number} */
stunPort;
/** @type {string} */
audioPlaybackDeviceName;
/** @type {string} */
audioRecordingDeviceName;
/** @type {AudioCodecTypes[]} */
audioCodecs;
/** @type {DtmfMethods} */
dtmfMethod;
}
export class ThirdPartySipSettings {
/** @param {{accounts?:ThirdPartySipAccountSettings[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ThirdPartySipAccountSettings[]} */
accounts;
}
export class ThirdPartyDemoSettings {
/** @param {{extension?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
extension;
}
export class ThirdPartyPhoneSystemSettings {
/** @param {{type?:ThirdPartyPhoneSystemTypes,sipSettings?:ThirdPartySipSettings,demoSettings?:ThirdPartyDemoSettings}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ThirdPartyPhoneSystemTypes} */
type;
/** @type {ThirdPartySipSettings} */
sipSettings;
/** @type {ThirdPartyDemoSettings} */
demoSettings;
}
export class AppSettings {
/** @param {{enablePhoneNumberManagement?:boolean,enableDeviceManagement?:boolean,enableDialer?:boolean,enableCallHistory?:boolean,enableAssistants?:boolean,showFileNameInMessageCenter?:boolean,chakraTheme?:string,customCss?:string,pageTitle?:string,stringMappings?:string,logoutUrl?:string,portMyNumberUrl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
enablePhoneNumberManagement;
/** @type {boolean} */
enableDeviceManagement;
/** @type {boolean} */
enableDialer;
/** @type {boolean} */
enableCallHistory;
/** @type {boolean} */
enableAssistants;
/** @type {boolean} */
showFileNameInMessageCenter;
/** @type {string} */
chakraTheme;
/** @type {string} */
customCss;
/** @type {string} */
pageTitle;
/** @type {string} */
stringMappings;
/** @type {string} */
logoutUrl;
/** @type {string} */
portMyNumberUrl;
}
/** @typedef {'Accuracy'|'Speed'} */
export var AssistantTunings;
(function (AssistantTunings) {
AssistantTunings["Accuracy"] = "Accuracy"
AssistantTunings["Speed"] = "Speed"
})(AssistantTunings || (AssistantTunings = {}));
export class AssistantWord {
/** @param {{word?:string,pronounced?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
word;
/** @type {string} */
pronounced;
}
export class AssistantLink {
/** @param {{url?:string,description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
url;
/** @type {string} */
description;
}
/** @typedef {'Blind'|'Supervised'|'MessagesOnly'} */
export var AssistantTransferTypes;
(function (AssistantTransferTypes) {
AssistantTransferTypes["Blind"] = "Blind"
AssistantTransferTypes["Supervised"] = "Supervised"
AssistantTransferTypes["MessagesOnly"] = "MessagesOnly"
})(AssistantTransferTypes || (AssistantTransferTypes = {}));
export class AssistantTakeMessageField {
/** @param {{name?:string,description?:string,required?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
name;
/** @type {string} */
description;
/** @type {boolean} */
required;
}
export class AssistantContact {
/** @param {{name?:string,phoneNumber?:string,transferType?:AssistantTransferTypes,about?:string,emailAddress?:string,takeMessageFields?:AssistantTakeMessageField[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
name;
/** @type {string} */
phoneNumber;
/** @type {AssistantTransferTypes} */
transferType;
/** @type {string} */
about;
/** @type {string} */
emailAddress;
/** @type {AssistantTakeMessageField[]} */
takeMessageFields;
}
export class AssistantIntegration {
/** @param {{uri?:string,httpMethod?:string,authToken?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
uri;
/** @type {string} */
httpMethod;
/** @type {string} */
authToken;
}
export class AssistantSettings {
/** @param {{companyName?:string,greeting?:string,companyInformation?:string,customPrompt?:string,voice?:string,voiceStyle?:string,tuning?:AssistantTunings,words?:AssistantWord[],links?:AssistantLink[],contacts?:AssistantContact[],integrations?:AssistantIntegration[]}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
companyName;
/** @type {string} */
greeting;
/** @type {string} */
companyInformation;
/** @type {string} */
customPrompt;
/** @type {string} */
voice;
/** @type {string} */
voiceStyle;
/** @type {AssistantTunings} */
tuning;
/** @type {AssistantWord[]} */
words;
/** @type {AssistantLink[]} */
links;
/** @type {AssistantContact[]} */
contacts;
/** @type {AssistantIntegration[]} */
integrations;
}
export class EmbedSettings {
/** @param {{enabled?:boolean,allowedHosts?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {boolean} */
enabled;
/** @type {string} */
allowedHosts;
}
export class EndpointInfo extends EntityInfo {
/** @param {{accountId?:string,accountName?:string,customerId?:string,customerName?:string,referenceId?:string,customerBreadcrumb?:CustomerBreadcrumb[],displayName?:string,type?:EndpointTypes,extraInformation?:string,flowId?:string,flowName?:string,flowParams?:Struct,flowSchedule?:EndpointFlowSchedules,schedule?:Schedule,scheduledFlows?:ScheduledFlow[],disableSms?:boolean,useExternal10DlcCampaign?:boolean,isVirtualPhoneNumber?:boolean,isCallerIdVerified?:boolean,callerIdVerificationCode?:string,phoneNumber?:string,phoneNumberSid?:string,callerIdName?:string,addressSid?:string,doNotTouchPhoneNumber?:boolean,isEnrolledIn10DlcService?:boolean,enableCallerIdLookup?:boolean,userEmailAddress?:string,sipRegion?:TwilioSipRegions,sipCredentialSid?:string,sipUserName?:string,sipPassword?:string,sipDomain?:string,enableEmergencyCalling?:boolean,emergencyAddressSid?:string,emergencyPhoneNumberId?:string,agentState?:AgentStates,agentStateReason?:AgentStateReasons,userMode?:UserModes,voicemailGreetingId?:string,data?:Struct,emailAddress?:string,userFirstName?:string,userLastName?:string,avatarUrl?:string,managerRole?:UserManagerRoles,dashboardPermissions?:DashboardPermissions[],myFieldPermissions?:UserDataFieldModes,customerFieldPermissions?:UserDataFieldModes,otherUserFieldPermissions?:UserDataFieldModes,otherEndpointFieldPermissions?:UserDataFieldModes,name?:string,tags?:Tag[],actionUrls?:EndpointActionUrl[],teamMemberIds?:string[],contactListVisibility?:CustomerVisibility,contacts?:EndpointContact[],documoId?:string,integrationData?:EntityIntegrationData,thirdPartyPhoneSystemSettings?:ThirdPartyPhoneSystemSettings,overrideAppSettings?:boolean,appSettings?:AppSettings,assistantSettings?:AssistantSettings,embedSettings?:EmbedSettings,id?:string,dateCreated?:string,dateLastModified?:string,createdBy?:string,lastModifiedBy?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {string}
* @description The account ID this endpoint is associated with */
accountId;
/**
* @type {string}
* @description The name of the account this endpoint is associated with */
accountName;
/**
* @type {string}
* @description The ID of the customer this endpoint is associated with */
customerId;
/**
* @type {string}
* @description The name of the customer this endpoint is associated with */
customerName;
/**
* @type {string}
* @description The third party reference ID for the endpoint */
referenceId;
/**
* @type {CustomerBreadcrumb[]}
* @description The breadcrumb to the customer for this endpoint */
customerBreadcrumb;
/**
* @type {string}
* @description The display name of the endpoint */
displayName;
/**
* @type {EndpointTypes}
* @description The type of endpoint */
type;
/**
* @type {string}
* @description Extra info for this endpoint (typically to show in grid) */
extraInformation;
/**
* @type {string}
* @description The ID of the flow to use for voice */
flowId;
/**
* @type {string}
* @description The name of the flow to use for voice */
flowName;
/**
* @type {Struct}
* @description The params for the voice flow */
flowParams;
/**
* @type {EndpointFlowSchedules}
* @description Whether to use a single flow always or use scheduled flow system */
flowSchedule;
/**
* @type {Schedule}
* @description This endpoint's schedule */
schedule;
/**
* @type {ScheduledFlow[]}
* @description The list of scheduled flows when using scheduling */
scheduledFlows;
/**
* @type {boolean}
* @description Disable SMS */
disableSms;
/**
* @type {boolean}
* @description Set this to true to prevent Evo Voice from overriding the 10DLC / SMS settings for this number */
useExternal10DlcCampaign;
/**
* @type {boolean}
* @description Is this a virtual phone number? */
isVirtualPhoneNumber;
/**
* @type {boolean}
* @description Is caller ID verified for this virtual number? */
isCallerIdVerified;
/**
* @type {string}
* @description The verification code for this number */
callerIdVerificationCode;
/**
* @type {string}
* @description The phone number */
phoneNumber;
/**
* @type {string}
* @description The Sid of the phone number */
phoneNumberSid;
/**
* @type {string}
* @description The caller ID Name (CNAM) for the phone number */
callerIdName;
/**
* @type {string}
* @description The address SID associated with the phone number */
addressSid;
/**
* @type {boolean}
* @description Do not touch this phone number - for BYOA accounts */
doNotTouchPhoneNumber;
/**
* @type {boolean}
* @description Is this number enrolled in a 10DLC messaging service campaign */
isEnrolledIn10DlcService;
/**
* @type {boolean}
* @description Whether we look up caller ID or not */
enableCallerIdLookup;
/**
* @type {string}
* @description The email address of the user */
userEmailAddress;
/**
* @type {TwilioSipRegions}
* @description The Twilio Region for the SIP endpoint */
sipRegion;
/**
* @type {string}
* @description The Twilio Sid of the credentials for Sip */
sipCredentialSid;
/**
* @type {string}
* @description The Twilio SIP user name */
sipUserName;
/**
* @type {string}
* @description The Twilio SIP password */
sipPassword;
/**
* @type {string}
* @description The SIP domain */
sipDomain;
/**
* @type {boolean}
* @description Is emergency calling enabled on this number? */
enableEmergencyCalling;
/**
* @type {string}
* @description The SID of the emergency address for this number */
emergencyAddressSid;
/**
* @type {string}
* @description The ID of the phone number to use for emergency dialing */
emergencyPhoneNumberId;
/**
* @type {AgentStates}
* @description The current agent state of this user endpoint */
agentState;
/**
* @type {AgentStateReasons}
* @description The current agent state reason of this user endpoint */
agentStateReason;
/**
* @type {UserModes}
* @description The mode for this user */
userMode;
/**
* @type {string}
* @description The ID of the file to use for voicemail greeting */
voicemailGreetingId;
/**
* @type {Struct}
* @description The endpoint's data */
data;
/**
* @type {string}
* @description The email address for email endpoints */
emailAddress;
/**
* @type {string}
* @description The first name of the user (for user endpoints) */
userFirstName;
/**
* @type {string}
* @description The last name of the user (for user endpoints) */
userLastName;
/**
* @type {string}
* @description The URL of an image for this user's avatar */
avatarUrl;
/**
* @type {UserManagerRoles}
* @description Does this user have manager role? */
managerRole;
/**
* @type {DashboardPermissions[]}
* @description The list of dashboard permissions for when the manager role is custom */
dashboardPermissions;
/**
* @type {UserDataFieldModes}
* @description The type of visibility this user has to their own fields */
myFieldPermissions;
/**
* @type {UserDataFieldModes}
* @description The type of visibility this user has to customer fields */
customerFieldPermissions;
/**
* @type {UserDataFieldModes}
* @description The type of visibility this user has to other user fields */
otherUserFieldPermissions;
/**
* @type {UserDataFieldModes}
* @description The type of visibility this user has to other endpoint fields */
otherEndpointFieldPermissions;
/**
* @type {string}
* @description The name of this endpoint (for bots etc.) */
name;
/**
* @type {Tag[]}
* @description The list of tags for this endpoint */
tags;
/**
* @type {EndpointActionUrl[]}
* @description The list of action URLs */
actionUrls;
/**
* @type {string[]}
* @description The list of members in this team */
teamMemberIds;
/**
* @type {CustomerVisibility}
* @description Visibility of this user/team in contact lists */
contactListVisibility;
/**
* @type {EndpointContact[]}
* @description The list of contacts personal to this user */
contacts;
/**
* @type {string}
* @description The documo ID for this number */
documoId;
/**
* @type {EntityIntegrationData}
* @description Integration data for this endpoint */
integrationData;
/**
* @type {ThirdPartyPhoneSystemSettings}
* @description Settings for third party phone system */
thirdPartyPhoneSystemSettings;
/**
* @type {boolean}
* @description Should this user override the parent customer's app settings */
overrideAppSettings;
/**
* @type {AppSettings}
* @description App / Portal settings for this user */
appSettings;
/**
* @type {AssistantSettings}
* @description Configuration for the AI assistant */
assistantSettings;
/**
* @type {EmbedSettings}
* @description Configuration for the embed */
embedSettings;
}
export class AppNewAssistant {
/** @param {{accountId?:string,customerId?:string,name?:string,settings?:AssistantSettings}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
accountId;
/** @type {string} */
customerId;
/** @type {string} */
name;
/** @type {AssistantSettings} */
settings;
}
JavaScript AppNewAssistant DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /portal/assistants HTTP/1.1
Host: team.evovoice.io
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"accountId":"String","customerId":"String","name":"String","settings":{"companyName":"String","greeting":"String","companyInformation":"String","customPrompt":"String","voice":"String","voiceStyle":"String","tuning":"Accuracy","words":[{"word":"String","pronounced":"String"}],"links":[{"url":"String","description":"String"}],"contacts":[{"name":"String","phoneNumber":"String","transferType":"Blind","about":"String","emailAddress":"String","takeMessageFields":[{"name":"String","description":"String","required":false}]}],"integrations":[{"uri":"String","httpMethod":"String","authToken":"String"}]}}
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"accountId":"String","accountName":"String","customerId":"String","customerName":"String","referenceId":"String","customerBreadcrumb":[{"id":"String","name":"String"}],"displayName":"String","type":"PhoneNumber","extraInformation":"String","flowId":"String","flowName":"String","flowSchedule":"Always","schedule":{"timeZoneId":"String","inherit":false,"forceClosed":false,"rules":[{"id":"String","name":"String","priority":0,"state":"String","source":"String","condition":"String","simpleRuleType":"Always","customerState":"String","flowId":"String","isAllDay":false,"startDate":"String","startTime":"String","endTime":"String","bySetPosition":[0],"byMonth":[0],"byWeekNo":[0],"byYearDay":[0],"byMonthDay":[0],"byDay":[{"offset":0,"dayOfWeek":"Sunday"}],"byHour":[0],"byMinute":[0],"interval":0,"count":0,"untilDate":"String","frequency":"None"}],"defaultState":"String"},"scheduledFlows":[{"stateName":"String","flowId":"String"}],"disableSms":false,"useExternal10DlcCampaign":false,"isVirtualPhoneNumber":false,"isCallerIdVerified":false,"callerIdVerificationCode":"String","phoneNumber":"String","phoneNumberSid":"String","callerIdName":"String","addressSid":"String","doNotTouchPhoneNumber":false,"isEnrolledIn10DlcService":false,"enableCallerIdLookup":false,"userEmailAddress":"String","sipRegion":"NorthAmericaVirginia","sipCredentialSid":"String","sipUserName":"String","sipPassword":"String","sipDomain":"String","enableEmergencyCalling":false,"emergencyAddressSid":"String","emergencyPhoneNumberId":"String","agentState":"Unknown","agentStateReason":"Unknown","userMode":"SoftPhone","voicemailGreetingId":"String","emailAddress":"String","userFirstName":"String","userLastName":"String","avatarUrl":"String","managerRole":"None","dashboardPermissions":["ViewFiles"],"myFieldPermissions":"Hidden","customerFieldPermissions":"Hidden","otherUserFieldPermissions":"Hidden","otherEndpointFieldPermissions":"Hidden","name":"String","tags":[{"id":"String","name":"String","color":"Magenta"}],"actionUrls":[{"id":"String","url":"String","method":"GET"}],"teamMemberIds":["String"],"contactListVisibility":"None","contacts":[{"id":"String","displayName":"String","address":"String"}],"documoId":"String","integrationData":{"String":{"thirdPartyId":"String"}},"thirdPartyPhoneSystemSettings":{"type":"Demo","sipSettings":{"accounts":[{"number":"String","agent":"String","authName":"String","userName":"String","displayName":"String","password":"String","userDomain":"String","registrationExpires":0,"transportType":"UDP","localIP":"String","localPort":0,"sipServer":"String","sipServerPort":0,"outboundServer":"String","outboundServerPort":0,"stunServer":"String","stunPort":0,"audioPlaybackDeviceName":"String","audioRecordingDeviceName":"String","audioCodecs":["PCMU"],"dtmfMethod":"RFC2833"}]},"demoSettings":{"extension":"String"}},"overrideAppSettings":false,"appSettings":{"enablePhoneNumberManagement":false,"enableDeviceManagement":false,"enableDialer":false,"enableCallHistory":false,"enableAssistants":false,"showFileNameInMessageCenter":false,"chakraTheme":"String","customCss":"String","pageTitle":"String","stringMappings":"String","logoutUrl":"String","portMyNumberUrl":"String"},"assistantSettings":{"companyName":"String","greeting":"String","companyInformation":"String","customPrompt":"String","voice":"String","voiceStyle":"String","tuning":"Accuracy","words":[{"word":"String","pronounced":"String"}],"links":[{"url":"String","description":"String"}],"contacts":[{"name":"String","phoneNumber":"String","transferType":"Blind","about":"String","emailAddress":"String","takeMessageFields":[{"name":"String","description":"String","required":false}]}],"integrations":[{"uri":"String","httpMethod":"String","authToken":"String"}]},"embedSettings":{"enabled":false,"allowedHosts":"String"},"id":"String","dateCreated":"String","dateLastModified":"String","createdBy":"String","lastModifiedBy":"String"}