The XC5 JSON System API provides network operators the ability to automate provisioning of the XC5 system through JSON over HTTPS.
Name | type | default | description |
guid | string/uniqueidentifier | | Unique identifier for this account |
username | string | | Username used for authorization |
password | string | | Authorization password. |
description | string | | Free flow description/notes |
enabled | boolean | | Activate/Deactivate the account |
parent | string | | If set, refers to the parent this user is a child of. Users with the same parent have collective virtual PBX features. Users also inherit Location/Registration information, SpeedDials, Extension Dials, Recording, Menus etc of their immediate parent. |
parentguid | string/uniqueidentifier | | As per parent but optionally accessed uniqueidentifier |
pin_reference | boolean | | Every call is asked for a call reference for billing purposes. The reference is unvalidated and stored in the CDR |
dnd | boolean | | Do not disturb. The account will act as if unregistered and proceed to any diversions |
private | boolean | | Mark all outgoing calls as private. Smart codes can be used to change this setting or override on a per call basis |
block_privacy | boolean | | Do not allow private calls to this user |
callerid | boolean | | Present caller detail for calls to this user |
cfna_duration | integer | | The number of seconds to ring before proceeding to diversions |
reg_status | string/read-only | | Provides the current registered status |
trunking | boolean | | Enable SIP trunking. Trunking devices allow an INVITE containing a varying DDI in the request line |
concurrent_call_limit | integer | | Restricts the maximum number of concurrent calls to/from this user |
pickup_group | string | | Users can pickup calls from other ringing phones if they share the same pickup group name |
pilot | string | | The DDI to present on outgoing calls when a user invites with a number outside their set of valid numbers. Use Account/*/Pilot for available pilots |
api_user | boolean | | Allows this user api access |
pin | text/numeric | | Manages singular account PIN |
moh | string | | A SHOUTCast stream for Music on Hold |
menu_active | boolean/readonly | | Indicates if a menu is active |
numbers | [] or [{}] | | e164 numbers to assign to this account. Numbers specifies either an array of numbers or and array of objects {"number":"",alert_info:"",account_code:""}. Requires system level access |
pins | [] or [{}] | | PIN numbers to assign to this account. PINS specifies either an array of PINS or and array of objects {"pin":"1234",pinuser:"user-data"} |
child_count | integer/readonly | | Identifies number of child accounts |
Name | type | default | description |
order | integer | | Call rules are applied in sequential order. The lower order rules are processed first |
early_rule | boolean | | Early rules are processed before smartphone features. An early rule can remap/prohibit smartphone features. Using impersonation can allow the caller to perform smartphone operations on behalf of other users |
prefix | string | | A pattern to match against the translated dialed number |
prefix_raw | string | | A pattern to match against the raw dialed number |
called_pattern | string | | As per prefix, but accepts inversion, I.e. !64% |
location | string | | Applies this rule if calling to this location. Use api-sys/Account/../Location |
bypass_condition | string | | Applies this rule if a previous rule has set the bypass value to something matching this condition |
bypass_value | string | | Sets a bypass value. The bypass value can be tested in subsequent rules using bypass_condition |
destination | string | | The new number to translate to |
username | string | | A username to forward this call to |
impersonate | string | | An optional user to impersonate when this rule applies |
pin | string | | Control PIN collection. M will require validation against the accounts Multiple PIN table. A specific PIN may also be supplied here. |
record_email | string | | The call shall be recorded and eMailed to the specified address |
Name | type | default | description |
cdrid | integer | | Unique cdr identifier |
hop_type | string | | from_user,diversion. Indicates the reason for this hop |
calldate | datetime | | Date call was initiated in localtime |
caller | string | | The E.164 phone number representing this caller |
caller_area | string | | The calling area determined by access to local numbering plans. I.e. nad.org.nz |
caller_private | boolean | | This call requested privacy, or privacy was imposed by the system |
caller_owning_carrier | string | | The callers owning carrier determined by access to local carrier data. I.e. ipms-prod.tcf.org.nz |
caller_addr | string | | The source IP address this call entered the system from |
caller_user | string | | The XC5 username of the caller if available |
local_user | string | | The XC5 entity responsible for this call. This may be the caller, or may be a diverting user |
local_accountguid | string | | The accountguid of the XC5 entity responsible for this call. |
local_number | string | | The XC5 entity's number responsible for this call. This may be the diverting number |
called | string | | The E.164 destination |
called_area | string | | The called area determined by access to local numbering plans. I.e. nad.org.nz |
called_owning_carrier | string | | The called numbers owning carrier determined by access to local carrier data. I.e. ipms-prod.tcf.org.nz |
called_accountguid | string | | The accountguid if available of the XC5 entity called. |
called_user | string | | The username if available of the XC5 entity called. |
duration_setup | integer | | The number of seconds elapsed before the call was connected |
duration | integer | | The number of seconds the call was connected for |
error | string | | The calls SIP response |
reason | string | | Verbose error reason |
cdr_pin | string | | Contains validated or invalidated PIN if a PIN was requested |
sessionguid | string | | Diagnostic GUID to the paths of this call |
Name | type | default | description |
guid | string | | Unique identifier for each entry. A PUT by GUID can move a Number (I.e. from Account/*/NumAllocate into a new account |
number | string | | The e.164 phone number. Numbers must be unique, or prefixed with a: if outgoing rewrite is allowed |
is_pilot | boolean | | Indicates to use this number a a default for invalid presented caller number |
cfa | string | | An e.164 destination. Creates a call-forward-all for calls to this number. This number based CFA will take place before any account CFA. |
cfa_active | boolean | | Enables or disables the call forward all |
cfa_prompt | string | | A prompt to play on the call forward. Prompts must be loaded onto XS_Nodes. I.e. XC5_BEEP or >XC5_BEEP to play remote tone |
alert_info | string | | Assigns a value to the sip Alert-Info header for distinctive ring |
account_code | string | | Free for use associated data |
Name | type | default | description |
account_owner | string | | Refers to the cloud owner of this account |
alarm_asr_min | string | | Minimum ASR alarm threshold |
api_access | string | | Grants this user access to the api as System or Multi-tenant Operator |
billing_carrier | string | | Specifies the billing carrier for this account |
billing_location | string | | Specifies the billing location for this account |
caller_control | string | | asserted,invalid_pan:nnnn,*,forced:nnnn |
codec_policy | string | | <force:alaw,mulaw> The force prefix forces the following codec list on calls to the user. Native codecs are alaw,mulaw,g729,iLBC. <expand:g729> Expanding will add the codec list to the codecs offered by the caller |
concurrent_call_group | string | | |
concurrent_call_limit | string | | |
default_resolver | string | | Indicates the account that will be delegated to in case the dialed number is not within the local system. The default resolver is _route.default. |
discovery_method | string | | Sends an OPTION probe to a non-Infrastructure endpoint addresses. Maintains AccountReg with results |
endpoint_auth_password | string | | SIP connect password |
endpoint_auth_username | string | | SIP connect/send username/auth for 401 from destination |
endpoint_domain | string | | The domain to present when INVITING to this endpoint |
endpoint_ip_address | string | | |
endpoint_node | string | | For static endpoints, the specifies the hostname that calls to the endpoint must be made from |
fork_method | string | | Default:parallel. When multiple registrations exist, parallel will ring all devices, sequential will ring only one device |
fs_data | string | | alert-info=tone,no_caller_id,divert_cac, |
inherit_account | string | | AccountResources, CallRules and AccountRoutes are merged from inherited accounts |
ivr_account | string | | Indicates the subscribers unique code for ivr management |
lawful_intercept | string | | format as: <destination>,<liid> |
lmnp_destination | string | | If the called number is lmnp ported to the named network, the LMNP_IS_DESTN 1 flag will be set for number translation |
maintenance_redirect | string | | For _node entries, specifies the redirection node of all traffic. OPTIONS will not be responded to |
media_latch | string | | Sends RTP to received address - autoaddr |
media_timeout | string | | Default:true. Set to false to deactivate RTP Inactivity detector. USE ONLY FOR DEVICES THAT DO NOT SUPPORT reINVITE |
moh | string | | Specifies the music on hold for this account |
nature_of_address | string | | |
net_bind_listener | string | | ysipchan listener to bind to |
pickup_group | string | | |
pin_force_local | string | | If a PIN is set, setting pin_force_local will ask for a PIN even on local calls |
rateplan_o | string | | Specifies the rateplan to use when this account is originating calls |
rateplan_t | string | | Specifies the rateplan to use when this account is terminating calls |
record_local | string | | |
registered_state | string | | Indicates active/expired |
response_prompt_map | string | | Maps final response to prompts for ingress/no media. I.e. 404=XC5_INVALID,403=... |
route_criteria | string | | The route_criteria value is carried through delegation and can be tested within AccountRoute:RequiredPack to provide an equivalent of class of service routing |
ruri_method | string | | For sip trunking, setting to called will force the called number into the registered URI |
send_privacy_policy | string | | Only set trusted for carriers that will not disclose private numbers to the end user, trusted=Privacy, trusted=Remote-Party-ID |
stat_name | string | | |
trunk_identifier | string | | tgrp:xyz or x-nortel-profile:xyz or x-route-tag:xyz to present outgoing trunk |
xs_node_group | string | | The name of a group used to partition OPTION probes |
Name | type | default | description |
description | string | | Optional description |
order | integer | | Members are attempted in order. Equal orders are load shared. Negative orders are applied before calling the user, positive orders are applied after calling the user. (The user has an implied route at 0) |
menu_level | integer | | Optional menu this rule belongs to. 1 is the root menu. |
caller_private | boolean | | Applies this rule if the caller's privacy condition is met |
user_registered | boolean | | Applies this rule of the user_registered condition is met |
caller_location | string | | Applies this rule if the caller is from the specified location. Use api-sys/Account/../Location |
called_location | string | | Applies this rule if the called number is from the specified location. Use api-sys/Account/../Location |
caller_number | string | | Applies this rule if the call is from the specific caller_number (e.164) |
called_number | string | | Applies this rule if the call is to the specific called_number (e.164) |
time_definition | string | | Specify time-of-day rules for when this rule will apply. I.e. business hours can be defined as: !nz_holidays,Mon-Fri 08:30-17:00 |
response_code | string | | Applies if the response_code for the call attempt matches. Note: This rule must be at order greater than 0. Use response_code(486) to implement a call-forward-busy |
active | boolean | | Activates/deactives this route |
hit_weight | int | | This weight is added everytime this route is chosen. For routes of the same order, Routes with lower hit counts are attempted first |
digit_map | string | | A string mapping DTMF or time values to actions. See documentation |
promptguid | uniqueidentifier | | A recorded prompt identifier from /api-sys/account/.../prompt |
prompt_retry_guid | uniqueidentifier | | A recorded prompt identifier from /api-sys/account/.../prompt |
record_email | string | | Specifies an eMail address to forward a call recording |
username | string | | Divert to another user |
ring_seconds | integer | | Specifies the number of seconds to attempt calling this destination |
hunt_user | boolean | | The username will be called if not busy. The routes for the called username will also not apply |
queue_size | integer | | Specify the maximum number of calls that can flow past this point. Additional calls will be queued and periodically subjected to digit_map |
destination | string | | An e164 destination or service to divert to |
Name | type | default | description |
cdrid | integer | | Incrementing identifier for collection. Note: This is not unique. A single call may generate multiple CDR |
cdr_hop | string | | A diversion may cause a multi-leg call. The hop identifies the call leg within the cdrid |
hop_type | string | | from_user,diversion. Indicates the reason for this hop |
calldate | datetime | | Date call was initiated in localtime |
calldate_utc | datetime | | Date call was initiated in UTC |
caller | string | | The E.164 phone number representing this caller |
caller_display | stirng | | The displayed caller name |
caller_area | string | | The calling area determined by access to local numbering plans. I.e. nad.org.nz |
caller_private | boolean | | This call requested privacy, or privacy was imposed by the system |
caller_owning_carrier | string | | The callers owning carrier determined by access to local carrier data. I.e. ipms-prod.tcf.org.nz |
caller_addr | string | | The source IP address this call entered the system from |
caller_user | string | | The XC5 username of the caller if available |
local_user | string | | The XC5 entity responsible for this call. This may be the caller, or may be a diverting user |
local_accountguid | string | | The accountguid of the XC5 entity responsible for this call. |
local_parent_user | string | | The parent account of the local_user |
local_number | string | | The XC5 entity's number responsible for this call. This may be the diverting number |
called | string | | The E.164 destination |
called_area | string | | The called area determined by access to local numbering plans. I.e. nad.org.nz |
called_owning_carrier | string | | The called numbers owning carrier determined by access to local carrier data. I.e. ipms-prod.tcf.org.nz |
called_accountguid | string | | The accountguid if available of the XC5 entity called. |
called_user | string | | The username if available of the XC5 entity called. |
duration_setup | integer | | The number of seconds elapsed before the call was connected |
duration | integer | | The number of seconds the call was connected for |
error | string | | The calls SIP response |
reason | string | | Verbose error reason |
cdr_pin | string | | Contains validated or invalidated PIN if a PIN was requested |
sessionguid | string | | Diagnostic GUID to the paths of this call |
native_cdrid | integer | | The native cdrid of this hop. Note: This is the cdrid used in older versions of cdr extraction |
caller_called_nature | string | | The On or Off - network status of caller and called respectively. Use this to determine: local (OnOn), transit (OffOff), inbound (OffOn) or outbound(OnOff) call nature |
update_reason | string | | Contains a reason if the cdr has been manually updated in unforeseen circumstances |
Name | type | default | description |
cdr_hop | string | | A diversion may cause a multi-leg call. The hop identifies the call leg within the cdrid |
hop_type | string | | from_user,diversion. Indicates the reason for this hop |
calldate | datetime | | Date call was initiated in localtime |
calldate_utc | datetime | | Date call was initiated in UTC |
caller | string | | The E.164 phone number representing this caller |
caller_area | string | | The calling area determined by access to local numbering plans. I.e. nad.org.nz |
caller_private | boolean | | This call requested privacy, or privacy was imposed by the system |
caller_owning_carrier | string | | The callers owning carrier determined by access to local carrier data. I.e. ipms-prod.tcf.org.nz |
caller_addr | string | | The source IP address this call entered the system from |
caller_user | string | | The XC5 username of the caller if available |
local_user | string | | The XC5 entity responsible for this call. This may be the caller, or may be a diverting user |
local_accountguid | string | | The accountguid of the XC5 entity responsible for this call. |
local_number | string | | The XC5 entity's number responsible for this call. This may be the diverting number |
called | string | | The E.164 destination |
called_area | string | | The called area determined by access to local numbering plans. I.e. nad.org.nz |
called_owning_carrier | string | | The called numbers owning carrier determined by access to local carrier data. I.e. ipms-prod.tcf.org.nz |
called_accountguid | string | | The accountguid if available of the XC5 entity called. |
called_user | string | | The username if available of the XC5 entity called. |
duration_setup | integer | | The number of seconds elapsed before the call was connected |
duration | integer | | The number of seconds the call was connected for |
error | string | | The calls SIP response |
reason | string | | Verbose error reason |
cdr_pin | string | | Contains validated or invalidated PIN if a PIN was requested |
sessionguid | string | | Diagnostic GUID to the paths of this call |
native_cdrid | integer | | The native cdrid of this hop. Note: This is the cdrid used in older versions of cdr extraction |