POST | /portal/phone-numbers |
---|
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',
}
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 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 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;
public constructor(init?: Partial<EndpointInfo>) { super(init); (Object as any).assign(this, init); }
}
export class AppBuyPhoneNumber
{
public accountId?: string;
public customerId?: string;
public phoneNumberType?: EndpointTypes;
public phoneNumber?: string;
public constructor(init?: Partial<AppBuyPhoneNumber>) { (Object as any).assign(this, init); }
}
TypeScript AppBuyPhoneNumber DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /portal/phone-numbers HTTP/1.1
Host: evovoice.io
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
accountId: String,
customerId: String,
phoneNumberType: PhoneNumber,
phoneNumber: String
}
HTTP/1.1 200 OK Content-Type: text/jsv 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, showFileNameInMessageCenter: False, chakraTheme: String, customCss: String, pageTitle: String, stringMappings: String, logoutUrl: String, portMyNumberUrl: String }, id: String, dateCreated: String, dateLastModified: String, createdBy: String, lastModifiedBy: String }