Evo Voice

<back to all web services

PatchEndpoint

Update the specified endpoint

Requires Authentication
Requires any of the roles:SystemAdministrator, Manager, Customer
The following routes are available for this service:
PATCH/endpoints/{endpointId}


export class NodeParameterMap
{
    [key:string] : NodeParameter;

    public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}


export class EntityInfo
{
    /**
    * The ID of the object
    */
    // @ApiMember(Description="The ID of the object")
    public id?: string;

    /**
    * The date the object was created
    */
    // @ApiMember(Description="The date the object was created")
    public dateCreated?: string;

    /**
    * The date the object was last modified
    */
    // @ApiMember(Description="The date the object was last modified")
    public dateLastModified?: string;

    /**
    * The user that created this object
    */
    // @ApiMember(Description="The user that created this object")
    public createdBy?: string;

    /**
    * The user that last modified this object
    */
    // @ApiMember(Description="The user that last modified this object")
    public lastModifiedBy?: string;

    public constructor(init?: Partial<EntityInfo>) { (Object as any).assign(this, init); }
}

export class CustomerBreadcrumb
{
    public id?: string;
    public name?: string;

    public constructor(init?: Partial<CustomerBreadcrumb>) { (Object as any).assign(this, init); }
}

export enum EndpointTypes
{
    PhoneNumber = 'PhoneNumber',
    User = 'User',
    FaxNumber = 'FaxNumber',
    EmailAddress = 'EmailAddress',
    Unused_1 = 'Unused_1',
    Unused_2 = 'Unused_2',
    Unused_3 = 'Unused_3',
    Unused_4 = 'Unused_4',
    Unused_5 = 'Unused_5',
    Team = 'Team',
    Assistant = 'Assistant',
}

export class Value
{
    public boolValue?: boolean;
    public stringValue?: string;
    public numberValue?: number;
    public listValue?: Struct[];
    public structValue?: Struct;

    public constructor(init?: Partial<Value>) { (Object as any).assign(this, init); }
}

export class Struct
{

    public constructor(init?: Partial<Struct>) { (Object as any).assign(this, init); }
}

export enum EndpointFlowSchedules
{
    Always = 'Always',
    Scheduled = 'Scheduled',
    Simple = 'Simple',
}

export enum SimpleSchedulingRuleTypes
{
    Always = 'Always',
    CustomerState = 'CustomerState',
    Time = 'Time',
}

export class ScheduleDay
{
    public offset?: number;
    public dayOfWeek?: DayOfWeek;

    public constructor(init?: Partial<ScheduleDay>) { (Object as any).assign(this, init); }
}

export enum SchedulingRuleFrequency
{
    None = 'None',
    Secondly = 'Secondly',
    Minutely = 'Minutely',
    Hourly = 'Hourly',
    Daily = 'Daily',
    Weekly = 'Weekly',
    Monthly = 'Monthly',
    Yearly = 'Yearly',
}

export class SchedulingRule
{
    public id?: string;
    public name?: string;
    public priority?: number;
    public state?: string;
    public source?: string;
    public condition?: string;
    public simpleRuleType?: SimpleSchedulingRuleTypes;
    public customerState?: string;
    public flowId?: string;
    public flowParams?: Struct;
    public isAllDay?: boolean;
    public startDate?: string;
    public startTime?: string;
    public endTime?: string;
    public bySetPosition?: number[];
    public byMonth?: number[];
    public byWeekNo?: number[];
    public byYearDay?: number[];
    public byMonthDay?: number[];
    public byDay?: ScheduleDay[];
    public byHour?: number[];
    public byMinute?: number[];
    public interval?: number;
    public count?: number;
    public untilDate?: string;
    public frequency?: SchedulingRuleFrequency;

    public constructor(init?: Partial<SchedulingRule>) { (Object as any).assign(this, init); }
}

export class Schedule
{
    public timeZoneId?: string;
    public inherit?: boolean;
    public forceClosed?: boolean;
    public rules?: SchedulingRule[];
    public defaultState?: string;

    public constructor(init?: Partial<Schedule>) { (Object as any).assign(this, init); }
}

export class ScheduledFlow
{
    public stateName?: string;
    public flowId?: string;
    public flowParams?: Struct;

    public constructor(init?: Partial<ScheduledFlow>) { (Object as any).assign(this, init); }
}

export enum TwilioSipRegions
{
    NorthAmericaVirginia = 'NorthAmericaVirginia',
    NorthAmericaOregon = 'NorthAmericaOregon',
    EuropeIreland = 'EuropeIreland',
    EuropeFrankfurt = 'EuropeFrankfurt',
    AsiaPacificSingapore = 'AsiaPacificSingapore',
    AsiaPacificTokyo = 'AsiaPacificTokyo',
    AsiaPacificSydney = 'AsiaPacificSydney',
    SouthAmericaSanPaolo = 'SouthAmericaSanPaolo',
}

export enum AgentStates
{
    Unknown = 'Unknown',
    Ready = 'Ready',
    NotReady = 'NotReady',
    LoggedOut = 'LoggedOut',
    WrapUp = 'WrapUp',
    Outgoing = 'Outgoing',
    Other = 'Other',
}

export enum AgentStateReasons
{
    Unknown = 'Unknown',
    SetByUser = 'SetByUser',
    MissedCall = 'MissedCall',
    SetBySystem = 'SetBySystem',
}

export enum UserModes
{
    SoftPhone = 'SoftPhone',
    Sip = 'Sip',
    Flow = 'Flow',
    DataOnly = 'DataOnly',
    ThirdParty = 'ThirdParty',
}

export enum UserManagerRoles
{
    None = 'None',
    Manager = 'Manager',
    VoicemailAndCallHistory = 'VoicemailAndCallHistory',
    Custom = 'Custom',
}

export enum DashboardPermissions
{
    ViewFiles = 'ViewFiles',
    ViewNotifications = 'ViewNotifications',
    ViewSessions = 'ViewSessions',
    ViewEndpoints = 'ViewEndpoints',
    ViewReports = 'ViewReports',
    ViewCustomers = 'ViewCustomers',
    ViewFlows = 'ViewFlows',
}

export enum UserDataFieldModes
{
    Hidden = 'Hidden',
    ReadOnly = 'ReadOnly',
    ReadWrite = 'ReadWrite',
}

export enum TagColors
{
    Magenta = 'Magenta',
    Red = 'Red',
    Volcano = 'Volcano',
    Orange = 'Orange',
    Gold = 'Gold',
    Lime = 'Lime',
    Green = 'Green',
    Cyan = 'Cyan',
    Blue = 'Blue',
    GeekBlue = 'GeekBlue',
    Purple = 'Purple',
}

export class Tag
{
    public id?: string;
    public name?: string;
    public color?: TagColors;

    public constructor(init?: Partial<Tag>) { (Object as any).assign(this, init); }
}

export enum ActionUrlHttpMethods
{
    GET = 'GET',
    POST = 'POST',
}

export class EndpointActionUrl
{
    public id?: string;
    public url?: string;
    public method?: ActionUrlHttpMethods;

    public constructor(init?: Partial<EndpointActionUrl>) { (Object as any).assign(this, init); }
}

export enum CustomerVisibility
{
    None = 'None',
    CurrentCustomer = 'CurrentCustomer',
    CurrentAndChildCustomers = 'CurrentAndChildCustomers',
}

export class EndpointContact
{
    public id?: string;
    public displayName?: string;
    public address?: string;

    public constructor(init?: Partial<EndpointContact>) { (Object as any).assign(this, init); }
}

export class IntegrationData
{
    public thirdPartyId?: string;

    public constructor(init?: Partial<IntegrationData>) { (Object as any).assign(this, init); }
}

export class Dictionary<T> { [Key: string]: T; }

export class EntityIntegrationData extends Dictionary<IntegrationData>
{

    public constructor(init?: Partial<EntityIntegrationData>) { super(); (Object as any).assign(this, init); }
}

export enum ThirdPartyPhoneSystemTypes
{
    Demo = 'Demo',
    Sip = 'Sip',
}

export enum TransportTypes
{
    UDP = 'UDP',
    TLS = 'TLS',
    TCP = 'TCP',
    PERS = 'PERS',
}

export enum AudioCodecTypes
{
    PCMU = 0,
    GSM = 3,
    PCMA = 8,
    G722 = 9,
    G729 = 18,
    ILBC = 97,
    AMR = 98,
    AMRWB = 99,
    SPEEX = 100,
    DTMF = 101,
    SPEEXWB = 102,
    ISACWB = 103,
    ISACSWB = 104,
    OPUS = 105,
    G7221 = 121,
    NONE = -1,
}

export enum DtmfMethods
{
    RFC2833 = 'RFC2833',
    INFO = 'INFO',
}

export class ThirdPartySipAccountSettings
{
    public number?: string;
    public agent?: string;
    public authName?: string;
    public userName?: string;
    public displayName?: string;
    public password?: string;
    public userDomain?: string;
    public registrationExpires?: number;
    public transportType?: TransportTypes;
    public localIP?: string;
    public localPort?: number;
    public sipServer?: string;
    public sipServerPort?: number;
    public outboundServer?: string;
    public outboundServerPort?: number;
    public stunServer?: string;
    public stunPort?: number;
    public audioPlaybackDeviceName?: string;
    public audioRecordingDeviceName?: string;
    public audioCodecs?: AudioCodecTypes[];
    public dtmfMethod?: DtmfMethods;

    public constructor(init?: Partial<ThirdPartySipAccountSettings>) { (Object as any).assign(this, init); }
}

export class ThirdPartySipSettings
{
    public accounts?: ThirdPartySipAccountSettings[];

    public constructor(init?: Partial<ThirdPartySipSettings>) { (Object as any).assign(this, init); }
}

export class ThirdPartyDemoSettings
{
    public extension?: string;

    public constructor(init?: Partial<ThirdPartyDemoSettings>) { (Object as any).assign(this, init); }
}

export class ThirdPartyPhoneSystemSettings
{
    public type?: ThirdPartyPhoneSystemTypes;
    public sipSettings?: ThirdPartySipSettings;
    public demoSettings?: ThirdPartyDemoSettings;

    public constructor(init?: Partial<ThirdPartyPhoneSystemSettings>) { (Object as any).assign(this, init); }
}

export class AppSettings
{
    public enablePhoneNumberManagement?: boolean;
    public enableDeviceManagement?: boolean;
    public enableDialer?: boolean;
    public enableCallHistory?: boolean;
    public enableAssistants?: boolean;
    public showFileNameInMessageCenter?: boolean;
    public chakraTheme?: string;
    public customCss?: string;
    public pageTitle?: string;
    public stringMappings?: string;
    public logoutUrl?: string;
    public portMyNumberUrl?: string;

    public constructor(init?: Partial<AppSettings>) { (Object as any).assign(this, init); }
}

export enum AssistantTunings
{
    Accuracy = 'Accuracy',
    Speed = 'Speed',
}

export class AssistantWord
{
    public word?: string;
    public pronounced?: string;

    public constructor(init?: Partial<AssistantWord>) { (Object as any).assign(this, init); }
}

export class AssistantLink
{
    public url?: string;
    public description?: string;

    public constructor(init?: Partial<AssistantLink>) { (Object as any).assign(this, init); }
}

export enum AssistantTransferTypes
{
    Blind = 'Blind',
    Supervised = 'Supervised',
    MessagesOnly = 'MessagesOnly',
}

export class AssistantTakeMessageField
{
    public name?: string;
    public description?: string;
    public required?: boolean;

    public constructor(init?: Partial<AssistantTakeMessageField>) { (Object as any).assign(this, init); }
}

export class AssistantContact
{
    public name?: string;
    public phoneNumber?: string;
    public transferType?: AssistantTransferTypes;
    public about?: string;
    public emailAddress?: string;
    public takeMessageFields?: AssistantTakeMessageField[];

    public constructor(init?: Partial<AssistantContact>) { (Object as any).assign(this, init); }
}

export class AssistantIntegration
{
    public uri?: string;
    public httpMethod?: string;
    public authToken?: string;

    public constructor(init?: Partial<AssistantIntegration>) { (Object as any).assign(this, init); }
}

export class AssistantSettings
{
    public companyName?: string;
    public greeting?: string;
    public companyInformation?: string;
    public customPrompt?: string;
    public voice?: string;
    public voiceStyle?: string;
    public tuning?: AssistantTunings;
    public words?: AssistantWord[];
    public links?: AssistantLink[];
    public contacts?: AssistantContact[];
    public integrations?: AssistantIntegration[];

    public constructor(init?: Partial<AssistantSettings>) { (Object as any).assign(this, init); }
}

export class EndpointInfo extends EntityInfo
{
    /**
    * The account ID this endpoint is associated with
    */
    // @ApiMember(Description="The account ID this endpoint is associated with")
    public accountId?: string;

    /**
    * The name of the account this endpoint is associated with
    */
    // @ApiMember(Description="The name of the account this endpoint is associated with")
    public accountName?: string;

    /**
    * The ID of the customer this endpoint is associated with
    */
    // @ApiMember(Description="The ID of the customer this endpoint is associated with")
    public customerId?: string;

    /**
    * The name of the customer this endpoint is associated with
    */
    // @ApiMember(Description="The name of the customer this endpoint is associated with")
    public customerName?: string;

    /**
    * The third party reference ID for the endpoint
    */
    // @ApiMember(Description="The third party reference ID for the endpoint")
    public referenceId?: string;

    /**
    * The breadcrumb to the customer for this endpoint
    */
    // @ApiMember(Description="The breadcrumb to the customer for this endpoint")
    public customerBreadcrumb?: CustomerBreadcrumb[];

    /**
    * The display name of the endpoint
    */
    // @ApiMember(Description="The display name of the endpoint")
    public displayName?: string;

    /**
    * The type of endpoint
    */
    // @ApiMember(Description="The type of endpoint")
    public type?: EndpointTypes;

    /**
    * Extra info for this endpoint (typically to show in grid)
    */
    // @ApiMember(Description="Extra info for this endpoint (typically to show in grid)")
    public extraInformation?: string;

    /**
    * The ID of the flow to use for voice
    */
    // @ApiMember(Description="The ID of the flow to use for voice")
    public flowId?: string;

    /**
    * The name of the flow to use for voice
    */
    // @ApiMember(Description="The name of the flow to use for voice")
    public flowName?: string;

    /**
    * The params for the voice flow
    */
    // @ApiMember(Description="The params for the voice flow")
    public flowParams?: Struct;

    /**
    * 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")
    public flowSchedule?: EndpointFlowSchedules;

    /**
    * This endpoint's schedule
    */
    // @ApiMember(Description="This endpoint's schedule")
    public schedule?: Schedule;

    /**
    * The list of scheduled flows when using scheduling
    */
    // @ApiMember(Description="The list of scheduled flows when using scheduling")
    public scheduledFlows?: ScheduledFlow[];

    /**
    * Disable SMS
    */
    // @ApiMember(Description="Disable SMS")
    public disableSms?: boolean;

    /**
    * 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")
    public useExternal10DlcCampaign?: boolean;

    /**
    * Is this a virtual phone number?
    */
    // @ApiMember(Description="Is this a virtual phone number?")
    public isVirtualPhoneNumber?: boolean;

    /**
    * Is caller ID verified for this virtual number?
    */
    // @ApiMember(Description="Is caller ID verified for this virtual number?")
    public isCallerIdVerified?: boolean;

    /**
    * The verification code for this number
    */
    // @ApiMember(Description="The verification code for this number")
    public callerIdVerificationCode?: string;

    /**
    * The phone number
    */
    // @ApiMember(Description="The phone number")
    public phoneNumber?: string;

    /**
    * The Sid of the phone number
    */
    // @ApiMember(Description="The Sid of the phone number")
    public phoneNumberSid?: string;

    /**
    * The caller ID Name (CNAM) for the phone number
    */
    // @ApiMember(Description="The caller ID Name (CNAM) for the phone number")
    public callerIdName?: string;

    /**
    * The address SID associated with the phone number
    */
    // @ApiMember(Description="The address SID associated with the phone number")
    public addressSid?: string;

    /**
    * Do not touch this phone number - for BYOA accounts
    */
    // @ApiMember(Description="Do not touch this phone number - for BYOA accounts")
    public doNotTouchPhoneNumber?: boolean;

    /**
    * Is this number enrolled in a 10DLC messaging service campaign
    */
    // @ApiMember(Description="Is this number enrolled in a 10DLC messaging service campaign")
    public isEnrolledIn10DlcService?: boolean;

    /**
    * Whether we look up caller ID or not
    */
    // @ApiMember(Description="Whether we look up caller ID or not")
    public enableCallerIdLookup?: boolean;

    /**
    * The email address of the user
    */
    // @ApiMember(Description="The email address of the user")
    public userEmailAddress?: string;

    /**
    * The Twilio Region for the SIP endpoint
    */
    // @ApiMember(Description="The Twilio Region for the SIP endpoint")
    public sipRegion?: TwilioSipRegions;

    /**
    * The Twilio Sid of the credentials for Sip
    */
    // @ApiMember(Description="The Twilio Sid of the credentials for Sip")
    public sipCredentialSid?: string;

    /**
    * The Twilio SIP user name
    */
    // @ApiMember(Description="The Twilio SIP user name")
    public sipUserName?: string;

    /**
    * The Twilio SIP password
    */
    // @ApiMember(Description="The Twilio SIP password")
    public sipPassword?: string;

    /**
    * The SIP domain
    */
    // @ApiMember(Description="The SIP domain")
    public sipDomain?: string;

    /**
    * Is emergency calling enabled on this number?
    */
    // @ApiMember(Description="Is emergency calling enabled on this number?")
    public enableEmergencyCalling?: boolean;

    /**
    * The SID of the emergency address for this number
    */
    // @ApiMember(Description="The SID of the emergency address for this number")
    public emergencyAddressSid?: string;

    /**
    * The ID of the phone number to use for emergency dialing
    */
    // @ApiMember(Description="The ID of the phone number to use for emergency dialing")
    public emergencyPhoneNumberId?: string;

    /**
    * The current agent state of this user endpoint
    */
    // @ApiMember(Description="The current agent state of this user endpoint")
    public agentState?: AgentStates;

    /**
    * The current agent state reason of this user endpoint
    */
    // @ApiMember(Description="The current agent state reason of this user endpoint")
    public agentStateReason?: AgentStateReasons;

    /**
    * The mode for this user
    */
    // @ApiMember(Description="The mode for this user")
    public userMode?: UserModes;

    /**
    * The ID of the file to use for voicemail greeting
    */
    // @ApiMember(Description="The ID of the file to use for voicemail greeting")
    public voicemailGreetingId?: string;

    /**
    * The endpoint's data
    */
    // @ApiMember(Description="The endpoint's data")
    public data?: Struct;

    /**
    * The email address for email endpoints
    */
    // @ApiMember(Description="The email address for email endpoints")
    public emailAddress?: string;

    /**
    * The first name of the user (for user endpoints)
    */
    // @ApiMember(Description="The first name of the user (for user endpoints)")
    public userFirstName?: string;

    /**
    * The last name of the user (for user endpoints)
    */
    // @ApiMember(Description="The last name of the user (for user endpoints)")
    public userLastName?: string;

    /**
    * The URL of an image for this user's avatar
    */
    // @ApiMember(Description="The URL of an image for this user's avatar")
    public avatarUrl?: string;

    /**
    * Does this user have manager role?
    */
    // @ApiMember(Description="Does this user have manager role?")
    public managerRole?: UserManagerRoles;

    /**
    * 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")
    public dashboardPermissions?: 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")
    public myFieldPermissions?: UserDataFieldModes;

    /**
    * The type of visibility this user has to customer fields
    */
    // @ApiMember(Description="The type of visibility this user has to customer fields")
    public customerFieldPermissions?: UserDataFieldModes;

    /**
    * The type of visibility this user has to other user fields
    */
    // @ApiMember(Description="The type of visibility this user has to other user fields")
    public otherUserFieldPermissions?: UserDataFieldModes;

    /**
    * The type of visibility this user has to other endpoint fields
    */
    // @ApiMember(Description="The type of visibility this user has to other endpoint fields")
    public otherEndpointFieldPermissions?: UserDataFieldModes;

    /**
    * The name of this endpoint (for bots etc.)
    */
    // @ApiMember(Description="The name of this endpoint (for bots etc.)")
    public name?: string;

    /**
    * The list of tags for this endpoint
    */
    // @ApiMember(Description="The list of tags for this endpoint")
    public tags?: Tag[];

    /**
    * The list of action URLs
    */
    // @ApiMember(Description="The list of action URLs")
    public actionUrls?: EndpointActionUrl[];

    /**
    * The list of members in this team
    */
    // @ApiMember(Description="The list of members in this team")
    public teamMemberIds?: string[];

    /**
    * Visibility of this user/team in contact lists
    */
    // @ApiMember(Description="Visibility of this user/team in contact lists")
    public contactListVisibility?: CustomerVisibility;

    /**
    * The list of contacts personal to this user
    */
    // @ApiMember(Description="The list of contacts personal to this user")
    public contacts?: EndpointContact[];

    /**
    * The documo ID for this number
    */
    // @ApiMember(Description="The documo ID for this number")
    public documoId?: string;

    /**
    * Integration data for this endpoint
    */
    // @ApiMember(Description="Integration data for this endpoint")
    public integrationData?: EntityIntegrationData;

    /**
    * Settings for third party phone system
    */
    // @ApiMember(Description="Settings for third party phone system")
    public thirdPartyPhoneSystemSettings?: ThirdPartyPhoneSystemSettings;

    /**
    * Should this user override the parent customer's app settings
    */
    // @ApiMember(Description="Should this user override the parent customer's app settings")
    public overrideAppSettings?: boolean;

    /**
    * App / Portal settings for this user
    */
    // @ApiMember(Description="App / Portal settings for this user")
    public appSettings?: AppSettings;

    /**
    * Configuration for the AI assistant
    */
    // @ApiMember(Description="Configuration for the AI assistant")
    public assistantSettings?: AssistantSettings;

    public constructor(init?: Partial<EndpointInfo>) { super(init); (Object as any).assign(this, init); }
}

export enum ListUpdateModes
{
    Replace = 'Replace',
    AddOrUpdate = 'AddOrUpdate',
    Remove = 'Remove',
}

/**
* Update the specified endpoint
*/
// @Api(Description="Update the specified endpoint")
export class PatchEndpoint implements IPatch
{
    /**
    * The ID of the endpoint to update
    */
    // @ApiMember(Description="The ID of the endpoint to update")
    public endpointId?: string;

    /**
    * The ID of the customer to associate this endpoint with
    */
    // @ApiMember(Description="The ID of the customer to associate this endpoint with")
    public customerId?: string;

    /**
    * The third party reference ID for the endpoint
    */
    // @ApiMember(Description="The third party reference ID for the endpoint")
    public referenceId?: string;

    /**
    * The ID of the flow to use for voice sessions
    */
    // @ApiMember(Description="The ID of the flow to use for voice sessions")
    public flowId?: string;

    /**
    * Params to use for the voice flow
    */
    // @ApiMember(Description="Params to use for the voice flow")
    public flowParams?: Struct;

    /**
    * 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")
    public flowSchedule?: EndpointFlowSchedules;

    /**
    * This endpoint's schedule
    */
    // @ApiMember(Description="This endpoint's schedule")
    public schedule?: Schedule;

    /**
    * The list of scheduled flows when using scheduling
    */
    // @ApiMember(Description="The list of scheduled flows when using scheduling")
    public scheduledFlows?: ScheduledFlow[];

    /**
    * Is this a partial flow param update?
    */
    // @ApiMember(Description="Is this a partial flow param update?")
    public isPartialFlowUpdate?: boolean;

    /**
    * The list of tag IDs for this endpoint
    */
    // @ApiMember(Description="The list of tag IDs for this endpoint")
    public tagIds?: string[];

    /**
    * Whether we look up caller ID or not
    */
    // @ApiMember(Description="Whether we look up caller ID or not")
    public enableCallerIdLookup?: boolean;

    /**
    * Enroll this number in a 10DLC messaging campaign?
    */
    // @ApiMember(Description="Enroll this number in a 10DLC messaging campaign?")
    public enrollIn10DlcService?: boolean;

    /**
    * Leave 10DLC campaign
    */
    // @ApiMember(Description="Leave 10DLC campaign")
    public leave10DlcService?: boolean;

    /**
    * The caller ID Name (CNAM) for the phone number
    */
    // @ApiMember(Description="The caller ID Name (CNAM) for the phone number")
    public callerIdName?: string;

    /**
    * The new password for the app
    */
    // @ApiMember(Description="The new password for the app")
    public userPassword?: string;

    /**
    * Is this user SIP based or soft phone
    */
    // @ApiMember(Description="Is this user SIP based or soft phone")
    public userMode?: UserModes;

    /**
    * The Twilio Region for the SIP endpoint
    */
    // @ApiMember(Description="The Twilio Region for the SIP endpoint")
    public sipRegion?: TwilioSipRegions;

    /**
    * Data values for this endpoint
    */
    // @ApiMember(Description="Data values for this endpoint")
    public data?: Struct;

    /**
    * 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")
    public useExternal10DlcCampaign?: boolean;

    /**
    * Disable SMS
    */
    // @ApiMember(Description="Disable SMS")
    public disableSms?: boolean;

    /**
    * The address SID associated with the phone number
    */
    // @ApiMember(Description="The address SID associated with the phone number")
    public addressSid?: string;

    /**
    * Unlock the phone number (for use with BYOA phone numbers)
    */
    // @ApiMember(Description="Unlock the phone number (for use with BYOA phone numbers)")
    public unlockPhoneNumber?: boolean;

    /**
    * The email address for this soft phone user. Will be used for login
    */
    // @ApiMember(Description="The email address for this soft phone user. Will be used for login")
    public userEmailAddress?: string;

    /**
    * The first name of the user (for user endpoints)
    */
    // @ApiMember(Description="The first name of the user (for user endpoints)")
    public userFirstName?: string;

    /**
    * The last name of the user (for user endpoints)
    */
    // @ApiMember(Description="The last name of the user (for user endpoints)")
    public userLastName?: string;

    /**
    * Does this user have manager role?
    */
    // @ApiMember(Description="Does this user have manager role?")
    public managerRole?: UserManagerRoles;

    /**
    * 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")
    public dashboardPermissions?: DashboardPermissions[];

    /**
    * The type of visibility this user has to customer fields
    */
    // @ApiMember(Description="The type of visibility this user has to customer fields")
    public myFieldPermissions?: UserDataFieldModes;

    /**
    * The type of visibility this user has to customer fields
    */
    // @ApiMember(Description="The type of visibility this user has to customer fields")
    public customerFieldPermissions?: UserDataFieldModes;

    /**
    * The type of visibility this user has to other user fields
    */
    // @ApiMember(Description="The type of visibility this user has to other user fields")
    public otherUserFieldPermissions?: UserDataFieldModes;

    /**
    * The type of visibility this user has to other endpoint fields
    */
    // @ApiMember(Description="The type of visibility this user has to other endpoint fields")
    public otherEndpointFieldPermissions?: UserDataFieldModes;

    /**
    * The visibility of this user/team in contact lists
    */
    // @ApiMember(Description="The visibility of this user/team in contact lists")
    public contactListVisibility?: CustomerVisibility;

    /**
    * The list of action URLs
    */
    // @ApiMember(Description="The list of action URLs")
    public actionUrls?: EndpointActionUrl[];

    /**
    * The type of update to perform to action urls if specified
    */
    // @ApiMember(Description="The type of update to perform to action urls if specified")
    public actionUrlsMode?: ListUpdateModes;

    /**
    * The name of the endpoint
    */
    // @ApiMember(Description="The name of the endpoint")
    public name?: string;

    /**
    * Force update the Twilio URLs for this number
    */
    // @ApiMember(Description="Force update the Twilio URLs for this number")
    public forceUpdateUrls?: boolean;

    /**
    * The list of members in this team
    */
    // @ApiMember(Description="The list of members in this team")
    public teamMemberIds?: string[];

    /**
    * The list of contacts personal to this user
    */
    // @ApiMember(Description="The list of contacts personal to this user")
    public contacts?: EndpointContact[];

    /**
    * Is emergency calling enabled on this number?
    */
    // @ApiMember(Description="Is emergency calling enabled on this number?")
    public enableEmergencyCalling?: boolean;

    /**
    * The SID of the emergency address for this number
    */
    // @ApiMember(Description="The SID of the emergency address for this number")
    public emergencyAddressSid?: string;

    /**
    * The ID of the phone number to use for emergency dialing
    */
    // @ApiMember(Description="The ID of the phone number to use for emergency dialing")
    public emergencyPhoneNumberId?: string;

    /**
    * Settings for third party phone system
    */
    // @ApiMember(Description="Settings for third party phone system")
    public thirdPartyPhoneSystemSettings?: ThirdPartyPhoneSystemSettings;

    /**
    * Should this user override the parent customer's app settings
    */
    // @ApiMember(Description="Should this user override the parent customer's app settings")
    public overrideAppSettings?: boolean;

    /**
    * App / Portal settings for this user
    */
    // @ApiMember(Description="App / Portal settings for this user")
    public appSettings?: AppSettings;

    /**
    * The settings for AI assistant
    */
    // @ApiMember(Description="The settings for AI assistant")
    public assistantSettings?: AssistantSettings;

    public constructor(init?: Partial<PatchEndpoint>) { (Object as any).assign(this, init); }
}

TypeScript PatchEndpoint DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PATCH /endpoints/{endpointId} HTTP/1.1 
Host: evovoice.io 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"endpointId":"String","customerId":"String","referenceId":"String","flowId":"String","flowParams":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}},"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","flowParams":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}},"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","flowParams":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}}}],"isPartialFlowUpdate":false,"tagIds":["String"],"enableCallerIdLookup":false,"enrollIn10DlcService":false,"leave10DlcService":false,"callerIdName":"String","userPassword":"String","userMode":"SoftPhone","sipRegion":"NorthAmericaVirginia","data":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}},"useExternal10DlcCampaign":false,"disableSms":false,"addressSid":"String","unlockPhoneNumber":false,"userEmailAddress":"String","userFirstName":"String","userLastName":"String","managerRole":"None","dashboardPermissions":["ViewFiles"],"myFieldPermissions":"Hidden","customerFieldPermissions":"Hidden","otherUserFieldPermissions":"Hidden","otherEndpointFieldPermissions":"Hidden","contactListVisibility":"None","actionUrls":[{"id":"String","url":"String","method":"GET"}],"actionUrlsMode":"Replace","name":"String","forceUpdateUrls":false,"teamMemberIds":["String"],"contacts":[{"id":"String","displayName":"String","address":"String"}],"enableEmergencyCalling":false,"emergencyAddressSid":"String","emergencyPhoneNumberId":"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"}]}}
HTTP/1.1 200 OK
Content-Type: application/json
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","flowParams":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}},"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","flowParams":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}},"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","flowParams":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}}}],"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","data":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}],"structValue":{"String":{"boolValue":false,"stringValue":"String","numberValue":0,"listValue":[null]}}}}}},"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"}]},"id":"String","dateCreated":"String","dateLastModified":"String","createdBy":"String","lastModifiedBy":"String"}