Requires any of the roles: | SystemAdministrator, Manager, Customer |
PATCHY | /system/settings |
---|
export class NodeParameterMap
{
[key:string] : NodeParameter;
public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); }
}
export class EntityInfo
{
/** @description The ID of the object */
// @ApiMember(Description="The ID of the object")
public id: string;
/** @description The date the object was created */
// @ApiMember(Description="The date the object was created")
public dateCreated: string;
/** @description The date the object was last modified */
// @ApiMember(Description="The date the object was last modified")
public dateLastModified: string;
/** @description The user that created this object */
// @ApiMember(Description="The user that created this object")
public createdBy: string;
/** @description 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 enum ValueTypes
{
NotSpecified = 'NotSpecified',
String = 'String',
Boolean = 'Boolean',
Number = 'Number',
List = 'List',
Struct = 'Struct',
Transition = 'Transition',
Custom = 'Custom',
Date = 'Date',
AudioFile = 'AudioFile',
TimeZoneId = 'TimeZoneId',
PhoneNumber = 'PhoneNumber',
User = 'User',
Endpoint = 'Endpoint',
Time = 'Time',
File = 'File',
FaxNumber = 'FaxNumber',
EmailAccount = 'EmailAccount',
Customer = 'Customer',
Flow = 'Flow',
Team = 'Team',
FlowReference = 'FlowReference',
Integration = 'Integration',
Assistant = 'Assistant',
}
export enum UIHints
{
None = 'None',
LargeText = 'LargeText',
InlineForm = 'InlineForm',
Password = 'Password',
InlineStruct = 'InlineStruct',
}
export class DataType
{
public typeName: string;
public fields: DataField[];
public constructor(init?: Partial<DataType>) { (Object as any).assign(this, init); }
}
export class Struct
{
public constructor(init?: Partial<Struct>) { (Object as any).assign(this, init); }
}
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 enum DataFieldUniqueness
{
NotUnique = 'NotUnique',
Unique = 'Unique',
UniqueToCustomer = 'UniqueToCustomer',
}
export enum UserDataFieldModes
{
Hidden = 'Hidden',
ReadOnly = 'ReadOnly',
ReadWrite = 'ReadWrite',
}
export class DataField
{
public id: string;
public name: string;
public type: ValueTypes;
public uiHint: UIHints;
public uiTab: string;
public isAsync: boolean;
public disableBinding: boolean;
public structType: DataType;
public listType: DataType;
public description: string;
public possibleValues: string[];
public isOutput: boolean;
public customFieldValuesUrl: string;
public defaultValue: Value;
public transitionNameFormat: string;
public uniqueness: DataFieldUniqueness;
public voiceOnly: boolean;
public conditionalVisibilityField: string;
public conditionalVisibilityValue: string;
public noEvalTemplate: boolean;
public userMode: UserDataFieldModes;
public anyValueType: boolean;
public constructor(init?: Partial<DataField>) { (Object as any).assign(this, init); }
}
export class SystemSettingsField extends DataField
{
public value: Value;
public constructor(init?: Partial<SystemSettingsField>) { super(init); (Object as any).assign(this, init); }
}
export class CustomerDataField extends DataField
{
public showInSearch: boolean;
public constructor(init?: Partial<CustomerDataField>) { super(init); (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 EndpointDataField extends DataField
{
public showInSearch: boolean;
public showInLists: boolean;
public endpointType?: EndpointTypes;
public isCallerId: boolean;
public isKnob: boolean;
public constructor(init?: Partial<EndpointDataField>) { super(init); (Object as any).assign(this, init); }
}
export class EmailAccount
{
public id: string;
public server: string;
public userName: string;
public port: number;
public emailAddress: string;
public displayName: string;
public password: string;
public constructor(init?: Partial<EmailAccount>) { (Object as any).assign(this, init); }
}
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 TwilioSipRegions
{
NorthAmericaVirginia = 'NorthAmericaVirginia',
NorthAmericaOregon = 'NorthAmericaOregon',
EuropeIreland = 'EuropeIreland',
EuropeFrankfurt = 'EuropeFrankfurt',
AsiaPacificSingapore = 'AsiaPacificSingapore',
AsiaPacificTokyo = 'AsiaPacificTokyo',
AsiaPacificSydney = 'AsiaPacificSydney',
SouthAmericaSanPaolo = 'SouthAmericaSanPaolo',
}
export class SystemSettingsInfo extends EntityInfo
{
/** @description Use to override the system time for testing */
// @ApiMember(Description="Use to override the system time for testing")
public overrideSystemTime: boolean;
/** @description The system override time zone */
// @ApiMember(Description="The system override time zone")
public overrideSystemTimeZoneId: string;
/** @description The system override date/time */
// @ApiMember(Description="The system override date/time")
public overrideSystemDateTime: string;
/** @description The list of system settings fields */
// @ApiMember(Description="The list of system settings fields")
public systemFields: SystemSettingsField[];
/** @description The list of customer metadata fields */
// @ApiMember(Description="The list of customer metadata fields")
public customerFields: CustomerDataField[];
/** @description The list of endpoint metadata fields */
// @ApiMember(Description="The list of endpoint metadata fields")
public endpointFields: EndpointDataField[];
/** @description The list of email accounts */
// @ApiMember(Description="The list of email accounts")
public emailAccounts: EmailAccount[];
/** @description The list of tags in the system */
// @ApiMember(Description="The list of tags in the system")
public tags: Tag[];
/** @description Documentation for the account */
// @ApiMember(Description="Documentation for the account")
public documentation: string;
/** @description The number of days recordings are retained */
// @ApiMember(Description="The number of days recordings are retained")
public recordingRetentionDays: number;
/** @description Enable the SIP refer beta */
// @ApiMember(Description="Enable the SIP refer beta")
public enableSipRefer: boolean;
/** @description The number of seconds after which we automatically logoff a not ready agent */
// @ApiMember(Description="The number of seconds after which we automatically logoff a not ready agent")
public autoAgentLogoffSeconds: number;
/** @description The default SIP region for new devices */
// @ApiMember(Description="The default SIP region for new devices")
public defaultSipRegion?: TwilioSipRegions;
public constructor(init?: Partial<SystemSettingsInfo>) { super(init); (Object as any).assign(this, init); }
}
/** @description Updates the system settings */
// @Api(Description="Updates the system settings")
export class PatchSystemSettings implements IPatch
{
/** @description Use to override the system time for testing */
// @ApiMember(Description="Use to override the system time for testing")
public overrideSystemTime?: boolean;
/** @description The system override time zone */
// @ApiMember(Description="The system override time zone")
public overrideSystemTimeZoneId: string;
/** @description The system override date/time */
// @ApiMember(Description="The system override date/time")
public overrideSystemDateTime: string;
/** @description The account ID of the system settings */
// @ApiMember(Description="The account ID of the system settings")
public accountId: string;
/** @description The list of system settings fields */
// @ApiMember(Description="The list of system settings fields")
public systemFields: SystemSettingsField[];
/** @description The list of customer fields */
// @ApiMember(Description="The list of customer fields")
public customerFields: CustomerDataField[];
/** @description The list of endpoint fields */
// @ApiMember(Description="The list of endpoint fields")
public endpointFields: EndpointDataField[];
/** @description The list of email accounts */
// @ApiMember(Description="The list of email accounts")
public emailAccounts: EmailAccount[];
/** @description The list of tags */
// @ApiMember(Description="The list of tags")
public tags: Tag[];
/** @description Documentation for the account */
// @ApiMember(Description="Documentation for the account")
public documentation: string;
/** @description The number of days recordings are retained */
// @ApiMember(Description="The number of days recordings are retained")
public recordingRetentionDays?: number;
/** @description Enable the SIP refer beta */
// @ApiMember(Description="Enable the SIP refer beta")
public enableSipRefer?: boolean;
/** @description The number of seconds after which we automatically logoff a not ready agent */
// @ApiMember(Description="The number of seconds after which we automatically logoff a not ready agent")
public autoAgentLogoffSeconds?: number;
/** @description The default SIP region for new devices */
// @ApiMember(Description="The default SIP region for new devices")
public defaultSipRegion?: TwilioSipRegions;
public constructor(init?: Partial<PatchSystemSettings>) { (Object as any).assign(this, init); }
}
TypeScript PatchSystemSettings 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 /system/settings HTTP/1.1
Host: team.evovoice.io
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
overrideSystemTime: False,
overrideSystemTimeZoneId: String,
overrideSystemDateTime: String,
accountId: String,
systemFields:
[
{
value:
{
boolValue: False,
stringValue: String,
numberValue: 0,
listValue:
[
null
]
},
id: String,
name: String,
type: NotSpecified,
uiHint: None,
uiTab: String,
isAsync: False,
disableBinding: False,
description: String,
possibleValues:
[
String
],
isOutput: False,
customFieldValuesUrl: String,
defaultValue:
{
boolValue: False,
stringValue: String,
numberValue: 0,
listValue:
[
null
]
},
transitionNameFormat: String,
uniqueness: NotUnique,
voiceOnly: False,
conditionalVisibilityField: String,
conditionalVisibilityValue: String,
noEvalTemplate: False,
userMode: Hidden,
anyValueType: False
}
],
customerFields:
[
{
showInSearch: False,
id: String,
name: String,
type: NotSpecified,
uiHint: None,
uiTab: String,
isAsync: False,
disableBinding: False,
description: String,
possibleValues:
[
String
],
isOutput: False,
customFieldValuesUrl: String,
defaultValue:
{
boolValue: False,
stringValue: String,
numberValue: 0,
listValue:
[
null
]
},
transitionNameFormat: String,
uniqueness: NotUnique,
voiceOnly: False,
conditionalVisibilityField: String,
conditionalVisibilityValue: String,
noEvalTemplate: False,
userMode: Hidden,
anyValueType: False
}
],
endpointFields:
[
{
showInSearch: False,
showInLists: False,
endpointType: PhoneNumber,
isCallerId: False,
isKnob: False,
id: String,
name: String,
type: NotSpecified,
uiHint: None,
uiTab: String,
isAsync: False,
disableBinding: False,
description: String,
possibleValues:
[
String
],
isOutput: False,
customFieldValuesUrl: String,
defaultValue:
{
boolValue: False,
stringValue: String,
numberValue: 0,
listValue:
[
null
]
},
transitionNameFormat: String,
uniqueness: NotUnique,
voiceOnly: False,
conditionalVisibilityField: String,
conditionalVisibilityValue: String,
noEvalTemplate: False,
userMode: Hidden,
anyValueType: False
}
],
emailAccounts:
[
{
id: String,
server: String,
userName: String,
port: 0,
emailAddress: String,
displayName: String,
password: String
}
],
tags:
[
{
id: String,
name: String,
color: Magenta
}
],
documentation: String,
recordingRetentionDays: 0,
enableSipRefer: False,
autoAgentLogoffSeconds: 0,
defaultSipRegion: NorthAmericaVirginia
}
HTTP/1.1 200 OK Content-Type: text/jsv Content-Length: length { overrideSystemTime: False, overrideSystemTimeZoneId: String, overrideSystemDateTime: String, systemFields: [ { value: { boolValue: False, stringValue: String, numberValue: 0, listValue: [ null ] }, id: String, name: String, type: NotSpecified, uiHint: None, uiTab: String, isAsync: False, disableBinding: False, description: String, possibleValues: [ String ], isOutput: False, customFieldValuesUrl: String, defaultValue: { boolValue: False, stringValue: String, numberValue: 0, listValue: [ null ] }, transitionNameFormat: String, uniqueness: NotUnique, voiceOnly: False, conditionalVisibilityField: String, conditionalVisibilityValue: String, noEvalTemplate: False, userMode: Hidden, anyValueType: False } ], customerFields: [ { showInSearch: False, id: String, name: String, type: NotSpecified, uiHint: None, uiTab: String, isAsync: False, disableBinding: False, description: String, possibleValues: [ String ], isOutput: False, customFieldValuesUrl: String, defaultValue: { boolValue: False, stringValue: String, numberValue: 0, listValue: [ null ] }, transitionNameFormat: String, uniqueness: NotUnique, voiceOnly: False, conditionalVisibilityField: String, conditionalVisibilityValue: String, noEvalTemplate: False, userMode: Hidden, anyValueType: False } ], endpointFields: [ { showInSearch: False, showInLists: False, endpointType: PhoneNumber, isCallerId: False, isKnob: False, id: String, name: String, type: NotSpecified, uiHint: None, uiTab: String, isAsync: False, disableBinding: False, description: String, possibleValues: [ String ], isOutput: False, customFieldValuesUrl: String, defaultValue: { boolValue: False, stringValue: String, numberValue: 0, listValue: [ null ] }, transitionNameFormat: String, uniqueness: NotUnique, voiceOnly: False, conditionalVisibilityField: String, conditionalVisibilityValue: String, noEvalTemplate: False, userMode: Hidden, anyValueType: False } ], emailAccounts: [ { id: String, server: String, userName: String, port: 0, emailAddress: String, displayName: String, password: String } ], tags: [ { id: String, name: String, color: Magenta } ], documentation: String, recordingRetentionDays: 0, enableSipRefer: False, autoAgentLogoffSeconds: 0, defaultSipRegion: NorthAmericaVirginia, id: String, dateCreated: String, dateLastModified: String, createdBy: String, lastModifiedBy: String }