api:pbx:settings:update
Table of Contents
API : PBX: Settings Update
Introduction
This request will update the generel PBX settings for a customer.
Request
| URL | https://api.telecomx.dk/pbx/settings/CUSTOMER_ID | ||
|---|---|---|---|
| Method | POST | ||
| Access level | MANAGER or OWNER if user belongs to the customer. RESELLER if customer belongs to the reseller. ADMIN. |
||
| Param | CUSTOMER_ID | String | Id of the customer (24 hex-char string) |
| Body | defaultMusicOnHold | Id | Id of the default music on hold set to use, null for default. See MusicOnHold. |
| masterPinCode | String | Master pin code for spying, limitations and other * codes. 4-10 digits. | |
| defaultLanguage | String | ISO3166-1 2-char default language code, for audio/ui when no employee is associated. | |
| defaultNumber | String | Default phone number to present on outbound calls, if no a-number was specified. | |
| defaultVoiceAccount | Id | Id of default SIP account to invoice calls to when an outbound call does not present a phone number that belongs to a PBX trunk. | |
| nationalPrefix | String | National prefix for the country the hosted PBX belongs to. Used to determine if a call is international and in UI to remove prefix for readability, null if not used. | |
| callerIdNameOutbound | String | How to handle caller ID name on outbound calls: AS_IS - Send as is CUSTOMER - always show customer name (default) PREFIX - Prefix with customer name if extension has a user, otherwise use customer name |
|
| voicemailBreakout | Id | Id of dialplan item to redirect to if a caller presses '0' during voicemail greeting or recording. | |
| presentMobileOnLocalToMobile | Boolean | True to present mobile phone number when calling a mobile phone. | |
| billing | Object | Billing settings | |
| billing.invoicedUntil | Date | Date until which user and services has been invoiced. | |
| recording | Object | Recording setting for customer wide recording of calls and handling of consent. | |
| recording.mode | String | When to record calls: ALWAYS - all calls are recorded, NEVER - cannot record. | |
| recording.quality | String | Quality of call recordings: NORMAL - 48Khz Opus. COMPACT - 24Khz Opus. HIGH - 64Khz Opus - all with each part in separate channels). |
|
| recording.retension | Number | Number of days to store recording: 1, 3, 7, 14 or 30 days. For COMPACT quality 90, 180, 365 & 730 days are also available. | |
| recording.transcribe | String | Automatic transcription of calls that are recorded PBX wide (COMMON): DISABLED - no automatic transcription, TRANSCRIBE - automatic transcription, TRANSCRIBE_AND_SUMMARIZE - automatic transcription and AI summarization. | |
| recording.consentRequired | Boolean | True if consent to record is required from the other party. | |
| recording.localCall | String | If the other party is local then: NEVER - never record, ALWAYS always consent, CONSENT - ask for consent. | |
| recording.consentPeriod | Number | Consent options that shall be used when asking for consent: | |
| 0 - press 1 for consent for this call, press 0 to reject recording or wait. | |||
| 1 - press 1 for consent for this call, 2 for consent for the next month, 0 to reject recording or wait. | |||
| 3 - press 1 for consent for this call, 2 for consent for the next 3 months, 0 to reject recording or wait. | |||
| 6 - press 1 for consent for this call, 2 for consent for the next 6 months, 0 to reject recording or wait. | |||
| 12 - press 1 for consent for this call, 2 for consent for the next 12 months, 0 to reject recording or wait. | |||
| recording.inboundConsentMessage | Id | Id of consent message to be played on inbound calls when customer recording is enabled. Null to use system default message. | |
| recording.inboundDirectConsentMessage | Id | Id of consent message to be played on inbound calls directly to an employee who is recording. Null to use system default message. | |
| recording.outboundConsentMessage | Id | Id of consent message to be played on outbound calls by an employee who is recording. Null to use system default message. | |
| recording.onDemandConsentMessage | Id | Id of consent message to be played in call when an employee mid-call starts recording. Null to use system default message. | |
| recording.consentGivenMessage | Id | Id of message to be played after consent has been given. Null to use system default message. | |
| recording.consentRejectedMessage | Id | Id of message to be played after consent has been rejected. Null to use system default message. | |
| recording.robotExtensions | Array | List of ids of extensions that if involved in a bridge shall not trigger start of recording. | |
| recording.permissions.transcribe | Boolean | True if employees are allowed to transcribe recordings. | |
| recording.permissions.summarize | Boolean | True if employees are allowed to summarize recordings. | |
At little as a single property may be set.
Request body example
{
defaultMusicOnHold: '12345678901234567890BBBB',
masterPinCode: '0987654321',
voicemailBreakout: '12345678901234567890AAAA'
}
Response
The response will be the updated settings, if no errors occurred.
| Field | Type | Description |
|---|---|---|
| _id | Id | Id of customer the settings belongs to. |
| defaultMusicOnHold | Id | Id of the default music on hold set to use, null for default. See MusicOnHold. |
| masterPinCode | String | Master pin code for spying, limitations and other * codes. 4-10 digits. |
| defaultLanguage | String | ISO3166-1 2-char default language code, for audio/ui when no employee is associated. |
| defaultNumber | String | Default phone number to present on outbound calls, if no a-number was specified. |
| defaultVoiceAccount | Id | Id of default SIP account to invoice calls to when an outbound call does not present a phone number that belongs to a PBX trunk. |
| nationalPrefix | String | National prefix for the country the hosted PBX belongs to. Used to determine if a call is international and in UI to remove prefix for readability, null if not used. |
| callerIdNameOutbound | String | How to handle caller ID name on outbound calls: AS_IS - Send as is CUSTOMER - always show customer name (default) PREFIX - Prefix with customer name if extension has a user, otherwise use customer name |
| voicemailBreakout | Id | Id of dialplan item to redirect to if a caller presses '0' during voicemail greeting or recording. |
| presentMobileOnLocalToMobile | Boolean | True to present mobile phone number when calling a mobile phone. |
| billing | Object | Billing settings |
| billing.invoicedUntil | Date | Date until which user and services has been invoiced. |
| recording | Object | Recording setting for customer wide recording of calls and handling of consent. |
| recording.mode | String | When to record calls: ALWAYS - all calls are recorded, NEVER - cannot record. |
| recording.quality | String | Quality of call recordings: NORMAL - 48Khz Opus. COMPACT - 24Khz Opus. HIGH - 64Khz Opus - all with each part in separate channels). |
| recording.retension | Number | Number of days to store recording: 1, 3, 7, 14 or 30 days. For COMPACT quality 90, 180, 365 & 730 days are also available. |
| recording.transcribe | String | Automatic transcription of calls that are recorded PBX wide (COMMON): DISABLED - no automatic transcription, TRANSCRIBE - automatic transcription, TRANSCRIBE_AND_SUMMARIZE - automatic transcription and AI summarization. |
| recording.consentRequired | Boolean | True if consent to record is required from the other party. |
| recording.localCall | String | If the other party is local then: NEVER - never record, ALWAYS always consent, CONSENT - ask for consent. |
| recording.consentPeriod | Number | Consent options that shall be used when asking for consent: |
| 0 - press 1 for consent for this call, press 0 to reject recording or wait. | ||
| 1 - press 1 for consent for this call, 2 for consent for the next month, 0 to reject recording or wait. | ||
| 3 - press 1 for consent for this call, 2 for consent for the next 3 months, 0 to reject recording or wait. | ||
| 6 - press 1 for consent for this call, 2 for consent for the next 6 months, 0 to reject recording or wait. | ||
| 12 - press 1 for consent for this call, 2 for consent for the next 12 months, 0 to reject recording or wait. | ||
| recording.inboundConsentMessage | Id | Id of consent message to be played on inbound calls when customer recording is enabled. Null to use system default message. |
| recording.inboundDirectConsentMessage | Id | Id of consent message to be played on inbound calls directly to an employee who is recording. Null to use system default message. |
| recording.outboundConsentMessage | Id | Id of consent message to be played on outbound calls by an employee who is recording. Null to use system default message. |
| recording.onDemandConsentMessage | Id | Id of consent message to be played in call when an employee mid-call starts recording. Null to use system default message. |
| recording.consentGivenMessage | Id | Id of message to be played after consent has been given. Null to use system default message. |
| recording.consentRejectedMessage | Id | Id of message to be played after consent has been rejected. Null to use system default message. |
| recording.robotExtensions | Array | List of ids of extensions that if involved in a bridge shall not trigger start of recording. |
| recording.permissions.transcribe | Boolean | True if employees are allowed to transcribe recordings. |
| recording.permissions.summarize | Boolean | True if employees are allowed to summarize recordings. |
Note that properties holding no value may be omitted from the object.
Example
{ _id: '12345678901234567890ABCD', defaultMusicOnHold: ObjectId('12345789012345678901234'), masterPinCode: '1234567890', defaultLanguage: 'en', defaultNumber: '+4570305050', defaultVoiceAccount: ObjectId('1234578901234567890DDDD'), nationalPrefix: '+45', callerIdNameOutBound: 'CUSTOMER', voicemailBreakout: ObjectId('123456789012345678901111'), presentMobileOnLocalToMobile: false, billing: { invoiceUntil: '2019-01-01T00:00:00.000Z' }, recording: { mode: 'ALWAYS', quality: 'NORMAL', retension: 7, transcribe: 'DISABLED', consentRequired: true, localCall: 'ALWAYS', consentPeriod: 3, inboundConsentMessage: '12345678901234567890AAAA', inboundDirectConsentMessage: '12345678901234567890BBBB', outboundConsentMessage: '12345678901234567890CCCC', onDemandConsentMessage: '12345678901234567890DDDD', consentGivenMessage: '1234567890123457890EEEE', consentRejectedMessage: '12345678901234567890FFFF', robotExtensions: [], permissions: { transcribe: false, summarize: false } } }
Errors
| Error code | Message | Description |
|---|---|---|
| 404 | customer | Customer not found |
| 403 | access_denied | Insufficient access level |
| 404 | defaultMusicOnHold | Music on hold not found |
| 422 | masterPinCode | Master pin code is invalid |
| 404 | defaultNumber | Number does not belong to the customer |
| 422 | defaultLanguage | Invalid language |
| 422 | billing.serviceLevel | Invalid value |
| 422 | nationalPrefix | Invalid prefix |
| 404 | voicemailBreakout | Dialplan item not found |
| 404 | defaultVoiceAccount | Default voice account not found |
| 500 | internal_error | <Unspecified> |
api/pbx/settings/update.txt · Last modified: by Per Møller