Group Trunk Group¶
Warning: The behaviour of this API had been adapted in rel 1.7.3 with the introduction of limitOutgoingCalls and limitIncomingCalls to overcome some limitations linked to the value 0. It is however possible to enable a backward compatible adaptation logic that will try to define the values of these 2 parameters based on the maxIncomingCalls and maxOutgoingCalls. See below.
List group’s trunk groups¶
-
GET
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
¶ Get the list of trunk groups in a group.
Example request:
GET /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/ HTTP/1.1 Host: example.com
- Request JSON Object:
trunkingMode (string) – Optional filter on one trunking mode only (“normal” or “teamsDR”)
includeEnterpriseTrunkGroups (boolean) – Optional filter to requests the Trunks Groups of the whole Enterprise (only accepted for Tenant of type Enterprise)
Example response:
HTTP/1.1 200 OK Content-Type: "application/json" { "trunks": [ { "name": "APIO_Trunk_Group_Existing", "department": { "tenantId": "ApioSpTest", "groupId": "ApioGrpTest", "departmentName": "test_department_initial", "fullPathName": "test_department_parent_1 \\ test_department_initial" }, "deviceName": "Trunk_Group_Device_1", "deviceLevel": "Group", "groupId": "GroupTest", "trunkingMode": "normal" } ] }
- Response JSON Object:
trunks (array) – A list of objects as defined in Trunk Group.
- Status Codes:
200 OK – no error
404 Not Found – trunk group not found
Add group’s trunk group¶
-
POST
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
¶ Create a new trunk group in a group.
Example request:
POST /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/ HTTP/1.1 Host: example.com Content-Type: "application/json" { "name": "TrunkTest", "department": { "tenantId": "ApioEntTest", "groupId": "ApioEntGrpTest", "departmentName": "test_department_parent" }, "maxActiveCalls": 15, "enableBursting": false, "accessDevice": { "name": "TrunkTest_device", "level": "Group" }, "pilotUser": { "userId": "TrunkTestPilot@netaxis.be", "department": { "tenantId": "ApioEntTest", "groupId": "ApioEntGrpTest", "departmentName": "test_department_parent" }, "lastName": "Pilot", "firstName": "User", "linePort": "LP_TrunkTest_Pilot@netaxis.be", "password": "ChangeMe" }, "callForwardingAlwaysAction": "Forward", "callForwardingAlwaysForwardAddress": "+3222123456" }
- Request JSON Object:
name (string) – the name of the new trunk group.
accessDevice (object) – (optional) The existing Access Device that will be used for this Trunk Group. See Access Device (only name and level are relevant in this case, the other fields will be ignored). Mutually exclusive with accessDeviceInfo, if bot are present, only accessDevice will be used.
accessDeviceInfo (object) – (optional) Create a new Access Device with these info and use it for the Trunk Group. See Access Device Info. Mutually exclusive with accessDevice, if bot are present, only accessDevice will be used.
pilotUser (object) – (optional) Create a Pilot User wiuth a full control of the parameters. See User Profile Attributes. Can be used for example for pure SIP (no phone number) configuration. Mutually exclusive with pilotUserInfo, if bot are present, only pilotUser will be used.
department (object) – (Optional) An object as Group department key attributes.
pilotUserInfo (object) – (optional) Create a Pilot User based on the phone number. See Pilot User Info. Can be used for example for PBX configuration. Mutually exclusive with pilotUserInfo, if bot are present, only pilotUser will be used. It i simportant to know that the number present here will always be treated in auto_create mode.
maxActiveCalls (integer) – the maximum number of concurrent active trunk calls.
limitIncomingCalls (integer) – (optional) limit the number of concurrent active incoming trunk calls.
maxIncomingCalls (integer) – (optional) the maximum number of concurrent active incoming trunk calls. 0 means forbidden. Only taken into consideration if limitIncomingCalls is present and set to true.
limitOutgoingCalls (integer) – (optional) limit the number of concurrent active outgoing trunk calls.
maxOutgoingCalls (integer) – (optional) the maximum number of concurrent active outgoing trunk calls. 0 means forbidden. Only taken into consideration if limitOutgoingCalls is present and set to true
requireAuthentication (boolean) – (optional) Indicate if the Trunk must be authenticated to be used.
sipAuthenticationUserName (string) – (conditional) The SIP user name for the authentication. Must be present if requireAuthentication is set to true
sipAuthenticationPassword (string) – (conditional) The SIP user name for the authentication. Must be present if requireAuthentication is set to true
trunkGroupIdentity (string) – the trunk group identity. It is a SIP URI (without the sip:).
allowTerminationToTrunkGroupIdentity (boolean) – (optional)
includeTrunkGroupIdentity (boolean) – (optional) if set will include trunk group identity
includeDtgIdentity (boolean) – (optional) if set will include dtg identity
includeTrunkGroupIdentityForNetworkCalls (boolean) – (optional) is set will include trunk group identity for network calls
includeOtgIdentityForNetworkCalls (boolean) – (optional) if set will include otg identity in network calls
allowUnscreenedCalls (boolean) – (optional) if set will allow unscreened calls
allowUnscreenedEmergencyCalls (boolean) – (optional) if set will allow unscreened emergency calls
pilotUserCallingLineIdentityForExternalCallsPolicy (string) – (optional) the policy of the pilot user for calling line identity in presence of external calls
pilotUserChargeNumberPolicy (string) – (optional) the Trunk Group Pilot User Charge Number policy. Its value comes from list: “All Originating Calls”,”Unscreened Originating Calls”,”No Calls”
peeringDomain (string) – (optional) the network peering domain name.
routeToPeeringDomain (booolean) – (optional) if set will enable routing to Peering Domain
prefix (string) – (optional) prefix for the number
prefixEnabled (booolean) – if set will enable the prefix
statefulReroutingEnabled (booolean) – if set will enable stateful rerouting
pilotUserCallingLineAssertedIdentityPolicy (string) – (optional) the calling line asserted identity policy of the pilot user
useSystemCallingLineAssertedIdentityPolicy (boolean) – (optional) if True will use system’s calling line asserted identity policy, otherwise will use pilot user’s one
pilotUserCallOptimizationPolicy (string) – (optional) the call optimization policy of the pilot user
clidSourceForScreenedCallsPolicy (string) – (optional) the calling line ID source for screened calls policy of the pilot user
useSystemCLIDSourceForScreenedCallsPolicy (boolean) – (optional) if True will use system’s calling line ID source for screened calls policy, otherwise will use pilot user’s one
userLookupPolicy (string) – (optional) the lookup policy of the pilot user
useSystemUserLookupPolicy (boolean) – (optional) if True will use system’s lookup policy, otherwise will use pilot user’s one
pilotUserCallingLineIdentityForEmergencyCallsPolicy (string) – (optional) the calling line identity for emergency calls policy of the pilot user {‘All Originating Calls’|’Unscreened Originating Calls’|’No Calls’}
enableBursting (boolean) – (optional) if set it will enable extra calls over the maxActiveCalls limit.
burstingMaxActiveCalls (integer) – (conditional) the maximum number of concurrent active burst trunk calls. Must be present if enableBursting is set to true
burstingMaxIncomingCalls (integer) – (optional) the maximum number of concurrent active incoming burst trunk calls.
burstingMaxOutgoingCalls (integer) – (optional) the maximum number of concurrent active incoming burst trunk calls.
capacityExceededAction (string) – (optional) Trunk Group capacity exceeded action. Its value comes from list: “Forward”,”Reroute”, “”. (”” is to set no action).
capacityExceededForwardAddress (string) – (optional) Forward Address in case of capacity Exceeded. Must be present if capacityExceededAction is to “Forward”.
capacityExceededRerouteTrunkGroup (string) – (conditional) Reroute Trunk Group Key in case of capacity Exceeded. Must be present if capacityExceededAction is to “Reroute”. See Trunk Group Key.
capacityExceededTrapInitialCalls (integer) – (optional) An SNMP trap will be sent when the number of counted events crosses this threshold value.
capacityExceededTrapOffsetCalls (integer) – (optional) An SNMP traps will be sent after the initial trap each time the number of counted events increases by this value since the last trap.
unreachableDestinationAction (string) – (optional) Trunk Group unreachable destination action. Its value comes from list: “Forward” , “Reroute” , “”. (”” is to set no action).
unreachableDestinationForwardAddress (string) – (conditional) Phone Number or SIP URI that can be used to forward call in case of unreachable Destination. Must be present if unreachableDestinationAction is to “Forward”.
unreachableDestinationRerouteTrunkGroup (string) – (conditional)unreachable Destination Reroute Trunk Group Key. Must be present if unreachableDestinationAction is to “Reroute”. See Trunk Group Key.
invitationTimeout (integer) – (optional) The timer to start when an invitation is sent to a device associated with a trunk group.
sendContinuousOptionsMessage (booolean) – (optional) if set will send OPTIONS messages continuously
continuousOptionsSendingIntervalSeconds (integer) – (optional) the interval in seconds between one OPTIONS message and the other
failureOptionsSendingIntervalSeconds (integer) – (optional) the interval in seconds between a failure and the next OPTIONS message
failureThresholdCounter (integer) – (optional) the max number of failures allowed
successThresholdCounter (integer) – (optional) the max number of successes allowed
inviteFailureThresholdCounter (integer) – (optional) the max number of failures allowed for INVITE messages
inviteFailureThresholdWindowSeconds (integer) – the window in seconds to wait for an INVITE message to fail
templateName (string) – (optional) The name of the template to be used during the Trunk Group creation.
callForwardingAlwaysAction (string) – (optional) The call forwarding always mode. Its value comes from list: {‘Forward’|’Reroute’}.
callForwardingAlwaysForwardAddress (string) – (conditional) Phone Number or SIP URI where calls have to be forwarded. Must be present if callForwardingAlwaysAction is set to ‘Forward’.
callForwardingAlwaysRerouteTrunkGroup (object) – (conditional) Trunk Group where calls have to be rerouted. Must be present if callForwardingAlwaysAction is set to ‘Reroute’. See Trunk Group Key.
trunkingMode (string) – (optional) the type of trunk to be created (“normal”/”teamsDR”) if used and set to “teamsDR” it will use the default teams dr Trunk group template from settings, if none is present in the data.
- Response:
Same as GET instance answer.
- Status Codes:
201 Created – no error.
400 Bad Request – failed to create the trunk group.
Template Information for Trunk Group¶
The template category is trunk_group
MS Teams Direct Routing information¶
For creating a Trunk Group for DR, it is recommended to simply use a template with name “msteams_dr” (its content is described in the Configuration Guide) and to provide only the name and the capacity related fields. Most of the other parameters will have specific parameters needed by the MS Teams integration.
The element below has to be included in the Configuration Settings:
"TEAMS_CONFIG": {
"DR_SBC_DEVICE": "SBC-team",
"CARRIER_DOMAIN": "teams-bwks.netaxis.cloud"
}
Here are the meaning of the parameters:
DR_SBC_DEVICE: it is the name of the System Access Device that has been created for the SBC.
CARRIER_DOMAIN: it is the Teams Carrier Domain. The Teams Tenant Domains will be sub-domains of this one.
Configuration Information for Limit of Calls¶
The APIO behaviour is controlled by the following settings:
"BACKWARD_TRUNKGROUP_LIMITCALLS": true
This parameter is used in the POST and PUT operations.
If set to true (default) the following logic will be applied if limitIncomingCalls or limitOutgoingCalls is not present, taking limitIncomingCalls for example:
if maxIncomingCalls is present and greater than 0 then limitIncomingCalls is set to true
if maxIncomingCalls is present and equal to 0 then limitIncomingCalls is set to false
Display group’s trunk group¶
-
GET
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
(string: instance_name)/
¶ Get a trunk group in a group.
Example request:
GET /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/trunkgroup/ HTTP/1.1 Host: example.com
Example response:
HTTP/1.1 200 OK Content-Type: "application/json" { "department": { "tenantId": "ApioSpTest", "groupId": "ApioGrpTest", "departmentName": "test_department_initial" }, "pilotUserId": "TrunkTestPilot", "accessDevice": { "name": "TrunkTest_device", "level": "Group" }, "maxActiveCalls": 15, "enableBursting": false, "capacityExceededTrapInitialCalls": 0, "capacityExceededTrapOffsetCalls": 0, "invitationTimeout": 6, "requireAuthentication": false, "hostedUsers": [], "allowTerminationToTrunkGroupIdentity": false, "includeTrunkGroupIdentity": false, "includeDtgIdentity": false, "includeTrunkGroupIdentityForNetworkCalls": false, "includeOtgIdentityForNetworkCalls": false, "allowUnscreenedCalls": false, "allowUnscreenedEmergencyCalls": false, "pilotUserCallingLineIdentityForExternalCallsPolicy": "No Calls", "pilotUserChargeNumberPolicy": "No Calls", "routeToPeeringDomain": false, "prefix": "02", "statefulReroutingEnabled": false, "sendContinuousOptionsMessage": false, "continuousOptionsSendingIntervalSeconds": 30, "failureOptionsSendingIntervalSeconds": 10, "failureThresholdCounter": 1, "successThresholdCounter": 1, "inviteFailureThresholdCounter": 1, "inviteFailureThresholdWindowSeconds": 30, "pilotUserCallingLineAssertedIdentityPolicy": "Unscreened Originating Calls", "useSystemCallingLineAssertedIdentityPolicy": true, "totalActiveIncomingCalls": 0, "totalActiveOutgoingCalls": 0, "pilotUserCallOptimizationPolicy": "Optimize For User Services", "clidSourceForScreenedCallsPolicy": "Profile Name Profile Number", "useSystemCLIDSourceForScreenedCallsPolicy": true, "userLookupPolicy": "Basic", "useSystemUserLookupPolicy": true, "pilotUserCallingLineIdentityForEmergencyCallsPolicy": "Unscreened Originating Calls", "callForwardingAlwaysAction": "Forward", "callForwardingAlwaysForwardAddress": "+3222123456", "trunkingMode": "normal" }
- Response JSON Object:
department (object) – An object as defined as Group department key attributes.
accessDevice (object) – See Access Device.
maxActiveCalls (integer) – the maximum number of concurrent active trunk calls.
limitIncomingCalls (integer) – limit the number of concurrent active incoming trunk calls.
maxIncomingCalls (integer) – the maximum number of concurrent active incoming trunk calls. 0 means forbidden. Only relevant if limitIncomingCalls is true
limitOutgoingCalls (integer) – limit the number of concurrent active outgoing trunk calls.
maxOutgoingCalls (integer) – the maximum number of concurrent active outgoing trunk calls. 0 means forbidden. Only relevant if limitOutgoingCalls is true
enableBursting (boolean) – if set it will enable extra calls over the maxActiveCalls limit.
BurstingMaxActiveCalls (integer) – Bursting Maximum Number of Active Calls
burstingMaxIncomingCalls (integer) – Bursting Maximum Number of Incoming Calls
burstingMaxOutgoingCalls (integer) – Bursting Maximum Number of Outgoing Calls
capacityExceededAction (string) – (optional) Trunk Group capacity exceeded action.
capacityExceededForwardAddress (string) – (conditional) Trunk Group capacity exceeded Frorward Address. Relevant only if capacityExceededAction is set to ‘Forward’.
capacityExceededRerouteTrunkGroup (string) – (conditional) Trunk Group capacity exceeded reroute to Trunk Group. Relevant only if capacityExceededAction is set to ‘Reroute’. See Trunk Group Key.
capacityExceededTrapInitialCalls (integer) – An SNMP trap will be sent when the number of counted events crosses this threshold value.
capacityExceededTrapOffsetCalls (integer) – An SNMP traps will be sent after the intial trap each time the number of counted events increases by this value since the last trap.
unreachableDestinationAction (string) – (optional) Trunk Group unreachable destination action. Its value comes from list: “Forward” , “Reroute” , “”. (”” is to set no action).
unreachableDestinationForwardAddress (string) – (conditional) Phone Number or SIP URI that can be used to forward call in case of unreachable Destination. Relevant only if unreachableDestinationAction is to “Forward”.
unreachableDestinationRerouteTrunkGroup (string) – (conditional) unreachable Destination Reroute Trunk Group Key. Relevant only if unreachableDestinationAction is to “Reroute”. See Trunk Group Key.
invitationTimeout (integer) – The timer to start when an invitation is sent to a device associated with a trunk group.
requireAuthentication (boolean) – Indicate if the Trunk must be authenticated to be used.
sipAuthenticationUserName (string) – The SIP user name for the authentication
hostedUsers (array) – A list of objects as defined in User Profile Attributes.
trunkGroupIdentity (string) – the trunk group identity. It is a SIP URI (without the sip:).
otgDtgIdentity (string) – the Otg Dtg Identity.
allowTerminationToTrunkGroupIdentity (boolean) – allow termination to TrunkGroup Identity
allowTerminationToDtgIdentity (boolean) – allow termination to Dtg Identity
includeTrunkGroupIdentity (boolean) – if set will include trunk group identity
includeDtgIdentity (boolean) – if set will include dtg identity
includeTrunkGroupIdentityForNetworkCalls (boolean) – is set will include trunk group identity for network calls
includeOtgIdentityForNetworkCalls (boolean) – if set will include otg identity in network calls
allowUnscreenedCalls (boolean) – if set will allow unscreened calls
allowUnscreenedEmergencyCalls (boolean) – if set will allow unscreened emergency calls
pilotUserCallingLineIdentityForExternalCallsPolicy (string) – the policy of the pilot user for calling line identity in presence of external calls
pilotUserChargeNumberPolicy (string) – Trunk Group Pilot User Charge Number policy
callForwardingAlwaysAction (string) – (optional) The call forwarding always mode. Its value comes from list: {‘Forward’|’Reroute’}.
callForwardingAlwaysForwardAddress (string) – (conditional) Phone Number or SIP URI where calls have to be forwarded. Relevant only if callForwardingAlwaysAction is set to ‘Forward’.
callForwardingAlwaysRerouteTrunkGroup (object) – (conditional) Trunk Group where calls have to be rerouted. Relevant only if callForwardingAlwaysAction is set to ‘Reroute’. See Trunk Group Key.
peeringDomain (string) – peering domain
routeToPeeringDomain (boolean) – if set route To Peering Domain
prefix (string) – prefix for the number
statefulReroutingEnabled (booolean) – if set will enable stateful rerouting
sendContinuousOptionsMessage (booolean) – if set will send OPTIONS messages continuously
continuousOptionsSendingIntervalSeconds (integer) – the interval in seconds between one OPTIONS message and the other
failureOptionsSendingIntervalSeconds (integer) – the interval in seconds between a failure and the next OPTIONS message
failureThresholdCounter (integer) – the max number of failures allowed
successThresholdCounter (integer) – the max number of successes allowed
inviteFailureThresholdCounter (integer) – the max number of failures allowed for INVITE messages
inviteFailureThresholdWindowSeconds (integer) – the window in seconds to wait for an INVITE message to fail
pilotUserCallingLineAssertedIdentityPolicy (string) – the calling line asserted identity policy of the pilot user
useSystemCallingLineAssertedIdentityPolicy (boolean) – if True will use system’s calling line asserted identity policy, otherwise will use pilot user’s one
totalActiveIncomingCalls (integer) – the number of active incoming calls
totalActiveOutgoingCalls (integer) – the number of active outgoing calls
pilotUserCallOptimizationPolicy (string) – the call optimization policy of the pilot user
clidSourceForScreenedCallsPolicy (string) – the calling line ID source for screened calls policy of the pilot user
useSystemCLIDSourceForScreenedCallsPolicy (boolean) – if True will use system’s calling line ID source for screened calls policy, otherwise will use pilot user’s one
userLookupPolicy (string) – the lookup policy of the pilot user
useSystemUserLookupPolicy (boolean) – if True will use system’s lookup policy, otherwise will use pilot user’s one
pilotUserCallingLineIdentityForEmergencyCallsPolicy (string) – the calling line identity for emergency calls policy of the pilot user
trunkingMode (string) – the trunking mode (‘normal’, ‘teamsDR’).
- Status Codes:
200 OK – no error
404 Not Found – trunk group not found
Update group’s trunk group¶
-
PUT
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
(string: instance_name)/
¶ Update a trunk group in a group.
Example request:
PUT /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/trunkgroup/ HTTP/1.1 Host: example.com Content-Type: "application/json" { "pilotUserId": "TrunkTestPilot", "department": { "tenantId": "ApioEntTest", "groupId": "ApioEntGrpTest", "departmentName": "test_department_parent" }, "maxActiveCalls": 15, "enableBursting": false, "capacityExceededTrapInitialCalls": 0, "capacityExceededTrapOffsetCalls": 0, "invitationTimeout": 6, "requireAuthentication": false, "hostedUsers": [], "allowTerminationToTrunkGroupIdentity": false, "includeTrunkGroupIdentity": false, "includeDtgIdentity": false, "includeTrunkGroupIdentityForNetworkCalls": false, "includeOtgIdentityForNetworkCalls": false, "allowUnscreenedCalls": false, "allowUnscreenedEmergencyCalls": false, "pilotUserCallingLineIdentityForExternalCallsPolicy": "No Calls", "pilotUserChargeNumberPolicy": "No Calls", "routeToPeeringDomain": false, "prefix": "02", "statefulReroutingEnabled": false, "sendContinuousOptionsMessage": false, "continuousOptionsSendingIntervalSeconds": 30, "failureOptionsSendingIntervalSeconds": 10, "failureThresholdCounter": 1, "successThresholdCounter": 1, "inviteFailureThresholdCounter": 1, "inviteFailureThresholdWindowSeconds": 30, "pilotUserCallingLineAssertedIdentityPolicy": "Unscreened Originating Calls", "useSystemCallingLineAssertedIdentityPolicy": true, "totalActiveIncomingCalls": 0, "totalActiveOutgoingCalls": 0, "pilotUserCallOptimizationPolicy": "Optimize For User Services", "clidSourceForScreenedCallsPolicy": "Profile Name Profile Number", "useSystemCLIDSourceForScreenedCallsPolicy": true, "userLookupPolicy": "Basic", "useSystemUserLookupPolicy": true, "pilotUserCallingLineIdentityForEmergencyCallsPolicy": "Unscreened Originating Calls", "callForwardingAlwaysAction": "Reroute", "callForwardingAlwaysRerouteTrunkGroup": { "name": "TrunkTest" } }
- Request JSON Object:
name (string) – (optional). New Trunk Group name.
pilotUserId (string) – (optional). User Id of one of the Trunk Users linked to the Trunk Group that will be now used as Pilot User.
department (object) – (Optional) An object as Group department key attributes.
accessDevice (object) – (optional) The existing Access Device that will be used for this Trunk Group. See Access Device (only name and level are relevant in this case, the other fields will be ignored).
maxActiveCalls (integer) – the maximum number of concurrent active trunk calls.
limitIncomingCalls (integer) – (optional) limit the number of concurrent active incoming trunk calls.
maxIncomingCalls (integer) – (optional) the maximum number of concurrent active incoming trunk calls. 0 means forbidden. Only taken into consideration if limitIncomingCalls is present and set to true
limitOutgoingCalls (integer) – (optional) limit the number of concurrent active outgoing trunk calls.
maxOutgoingCalls (integer) – (optional) the maximum number of concurrent active outgoing trunk calls. 0 means forbidden. Only taken into consideration if limitOutgoingCalls is present and set to true
enableBursting (boolean) – (optional) if set it will enable extra calls over the maxActiveCalls limit.
burstingMaxActiveCalls (integer) – (conditional) the maximum number of concurrent active burst trunk calls. Must be present if enableBursting is set to true
burstingMaxIncomingCalls (integer) – (optional) the maximum number of concurrent active incoming burst trunk calls.
burstingMaxOutgoingCalls (integer) – (optional) the maximum number of concurrent active outgoing burst trunk calls.
capacityExceededAction (string) – (optional) Trunk Group capacity exceeded action. Its value comes from list: “Forward”,”Reroute”, “”. (”” is to set no action).
capacityExceededForwardAddress (string) – (optional) Forward Address in case of capacity Exceeded. Must be present if capacityExceededAction is to “Forward”.
capacityExceededRerouteTrunkGroup (string) – (conditional) Reroute Trunk Group Key in case of capacity Exceeded Must be present if capacityExceededAction is to “Reroute”. See Trunk Group Key. Set to Null to remove it.
capacityExceededTrapInitialCalls (integer) – (optional) An SNMP trap will be sent when the number of counted events crosses this threshold value.
capacityExceededTrapOffsetCalls (integer) – (optional) An SNMP traps will be sent after the initial trap each time the number of counted events increases by this value since the last trap.
unreachableDestinationAction (string) – (optional) Trunk Group unreachable destination action. Its value comes from list: “Forward” , “Reroute” , “”. (”” is to set no action).
unreachableDestinationForwardAddress (string) – (conditional) Phone Number or SIP URI that can be used to forward call in case of unreachable Destination. Must be present if unreachableDestinationAction is to “Forward”.
unreachableDestinationRerouteTrunkGroup (string) – (conditional) unreachable Destination Reroute Trunk Group Key. Must be present if unreachableDestinationAction is to “Reroute”. See Trunk Group Key. Set to Null to remove it.
invitationTimeout (integer) – (optional) The timer to start when an invitation is sent to a device associated with a trunk group.
requireAuthentication (boolean) – (optional) Indicate if the Trunk must be authenticated to be used.
sipAuthenticationUserName (string) – (conditional) The SIP user name for the authentication. Must be present if requireAuthentication is set to true
sipAuthenticationPassword (string) – (conditional) The SIP user name for the authentication. Must be present if requireAuthentication is set to true
trunkGroupIdentity (string) – (optional) the trunk group identity. It is a SIP URI (without the sip:).
otgDtgIdentity (string) – (optional) the dtg identity
allowTerminationToTrunkGroupIdentity (boolean) – (optional) if set will allow termination to trunk group Identity
allowTerminationToDtgIdentity (boolean) – (optional) if set will allow termination to Dtg Identity
includeTrunkGroupIdentity (boolean) – (optional) if set will include trunk group identity
includeDtgIdentity (boolean) – (optional) if set will include dtg identity
includeTrunkGroupIdentityForNetworkCalls (boolean) – (optional) is set will include trunk group identity for network calls
includeOtgIdentityForNetworkCalls (boolean) – (optional) if set will include otg identity in network calls
allowUnscreenedCalls (boolean) – (optional) if set will allow unscreened calls
allowUnscreenedEmergencyCalls (boolean) – (optional) if set will allow unscreened emergency calls
pilotUserCallingLineIdentityForExternalCallsPolicy (string) – (optional) the policy of the pilot user for calling line identity in presence of external calls. Its value comes from list: “All Originating Calls”,”Unscreened Originating Calls”,”No Calls”
pilotUserChargeNumberPolicy (string) – (optional) the Trunk Group Pilot User Charge Number policy. Its value comes from list: “All Originating Calls”,”Unscreened Originating Calls”,”No Calls”
callForwardingAlwaysAction (string) – (optional) The call forwarding always mode. Its value comes from list: “Forward” , “Reroute” , “”. (”” is to set no action).
callForwardingAlwaysForwardAddress (string) – (conditional) Phone Number or SIP URI where calls have to be forwarded. Must be present if callForwardingAlwaysAction is set to ‘Forward’.
callForwardingAlwaysRerouteTrunkGroup (object) – (conditional) Trunk Group where calls have to be rerouted. Must be present if callForwardingAlwaysAction is set to ‘Reroute’. See Trunk Group Key. Set to Null to remove it.
peeringDomain (string) – (optional) the network peering domain name.
routeToPeeringDomain (booolean) – (optional) if set will enable routing to Peering Domain
prefixEnabled (string) – (optional) enabling prefix for the number
prefix (string) – (optional) prefix for the number
statefulReroutingEnabled (booolean) – (optional) if set will enable stateful rerouting
sendContinuousOptionsMessage (boolean) – (optional) if set will send OPTIONS messages continuously
continuousOptionsSendingIntervalSeconds (integer) – (optional) the interval in seconds between one OPTIONS message and the other. value must be >= 10 and <= 86400
failureOptionsSendingIntervalSeconds (integer) – (optional) the interval in seconds between a failure and the next OPTIONS message. value must be >= 10 and <= 86400
failureThresholdCounter (integer) – (optional) the max number of failures allowed. value must be >= 1 and <= 60
successThresholdCounter (integer) – (optional) the max number of successes allowed. value must be >= 1 and <= 60
inviteFailureThresholdCounter (integer) – (optional) the max number of failures allowed for INVITE messages. value must be >= 1 and <= 60
inviteFailureThresholdWindowSeconds (integer) – the window in seconds to wait for an INVITE message to fail. value must be >= 30 and <= 240
pilotUserCallingLineAssertedIdentityPolicy (string) – (optional) the calling line asserted identity policy of the pilot user.A value from list: “All Originating Calls”,”Unscreened Originating Calls”
useSystemCallingLineAssertedIdentityPolicy (boolean) – (optional) if True will use system’s calling line asserted identity policy, otherwise will use pilot user’s one
pilotUserCallOptimizationPolicy (string) – (optional) the call optimization policy of the pilot user. A value from list: “Optimize For User Services”, “Optimize For High Call Volume”
clidSourceForScreenedCallsPolicy (string) – (optional) the calling line ID source for screened calls policy of the pilot user A value from list: “Profile Name Profile Number”,”Received Name Profile Number”,”Received Name Received Number”
useSystemCLIDSourceForScreenedCallsPolicy (boolean) – (optional) if True will use system’s calling line ID source for screened calls policy, otherwise will use pilot user’s one
userLookupPolicy (string) – (optional) the lookup policy of the pilot user. A value from list: “Basic”, “Extended”
useSystemUserLookupPolicy (boolean) – (optional) if True will use system’s lookup policy, otherwise will use pilot user’s one
pilotUserCallingLineIdentityForEmergencyCallsPolicy (string) – (optional) the calling line identity for emergency calls policy of the pilot user. A value from list: “All Originating Calls”,”Unscreened Originating Calls”,”No Calls”
- Status Codes:
200 OK – no error
404 Not Found – trunk group not found
Configuration Information for Trunk Group¶
The APIO behaviour of the delete Trunk Group instance is controlled by the following settings:
"TRUNK_GROUP" : {
"ON_CASCADE" : true,
"KEEP_DEVICE" : true,
"KEEP_NUMBERS": false
}
- With following parameters:
ON_CASCADE: the trunk users and the trunk numbers (including pilot if any) will be deleted too. Default is false. For the numbers and he device it is controlled by the 2 extra parameters below.
KEEP_DEVICE: the device will not be deleted when on_cascade is true. Default is false.
KEEP_NUMBERS: the trunk numbers (including the pilot) will not be deleted when on_cascade is true. But the trunk users (including the pilot) will be. Default is false.
Delete a Trunk Group¶
-
DELETE
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
(string: instance_name)/
¶ Delete a trunk group in a group.
Authorization rights: minimum Enterprise Group.
Restricted authorization rights: minimum Tenant Admin for this parameter:
keep_number
Example request:
DELETE /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/trunkgroup/ HTTP/1.1 Host: example.com Content-Type: "application/json"
Example response:
HTTP/1.1 200 OK Content-Type: "application/json" {}
- Request JSON Object:
on_cascade (boolean) – (optional). If true the access device, the trunk users and the trunk numbers (including pilot if any) will be deleted too. Default is false.
keep_device (boolean) – (Optional) If true the device will not be deleted when on_cascade is true. Default is false.
keep_numbers (boolean) – (Optional) If true the trunk numbers (including the pilot) will not be deleted when on_cascade is true. But the trunk users (including the pilot) will be. Default is false.
- Status Codes:
200 OK – no error
404 Not Found – trunk group not found
Display group’s trunk group backup details¶
-
GET
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
(string: instance_name)/backup/
¶ Get the backup details of a trunk group in a group.
This is a virtual service that is exposing the parameters of type unreachableDestination of the main API in a different and isolated way. It was a request of a specific customer who wanted to have a dedicated end point for these parameters.
Example request:
GET /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/trunkgroup/backup/ HTTP/1.1 Host: example.com
Example response:
HTTP/1.1 200 OK Content-Type: "application/json" { "mode": "Forward" "destination": "trunkgroup1@netaxis.be" }
- Response JSON Object:
mode (string) – the action to perform in case of unreachable trunk group
destination (string) – the destination to forward
trunk (object) – the reroute destination. See Trunk Group Key.
- Status Codes:
200 OK – no error
404 Not Found – trunk group not found
Update group’s trunk group backup details¶
-
PUT
/api/v1/tenants/
(string: tenant_id)/groups/
(string: group_id)/services/trunk_groups/
(string: instance_name)/backup/
¶ Update the backup details of a trunk group in a group.
This is a virtual service that is exposing the parameters of type unreachableDestination of the main API in a different and isolated way. It was a request of a specific customer who wanted to have a dedicated end point for these parameters.
Example request:
PUT /api/v1/tenants/foo/groups/foogroup/services/trunk_groups/trunkgroup/backup/ HTTP/1.1 Host: example.com Content-Type: "application/json" { "mode": "Reroute" "trunk": { "name": "backup_trunk_group" } }
- Request JSON Object:
mode (string) – the action to perform in case of unreachable trunk group. One of ‘Forward’, ‘Reroute’, ‘’
destination (string) – the destination to forward
trunk (object) – the reroute destination. See Trunk Group Key.
- Status Codes:
200 OK – no error
404 Not Found – trunk group not found
Objects definition¶
Trunk Group¶
This structure allows to represent a trunk group.
Name |
Type |
Methods |
Description |
---|---|---|---|
GET |
|||
name |
String |
A |
The name of the trunk group |
department |
Object |
A |
An object as defined as Group department key attributes. |
deviceName |
String |
A |
The device name of the trunk group |
deviceLevel |
String |
A |
The device level of the trunk group |
groupId |
String |
A |
The group ID of the trunk group |
trunkingMode |
String |
A |
The type of trunking “normal” or “teamsDR”. |
Trunk Group Key¶
This structure allows to represent a trunk group.
Name |
Type |
Methods |
Description |
---|---|---|---|
GET |
|||
tenantId |
String |
O |
If not present, it is the one of the url |
groupId |
String |
O |
If not present, it is the one of the url |
name |
String |
A |
The name of the trunk group |
Access Device Info¶
The minimum set of information to create a new device to be used by a Trunk Group.
Name |
Type |
Methods |
Description |
---|---|---|---|
POST |
|||
deviceType |
String |
R |
The type of device to be created. |
deviceName |
String |
O |
The name for the device. If not provided, APIO will generate one based on the Trunk Group Name. |
macAddress |
String |
O |
The macAddress for the device if needed. |
Pilot User Info¶
The minimum set of information to create a Trunk Group Pilot User.
Name |
Type |
Methods |
Description |
---|---|---|---|
POST |
|||
phoneNumber |
String |
R |
The phone number to be used for the Pilot User |
userId |
String |
O |
The pilot user id. If not provided, APIO will generate one based on the Phone Number |
password |
String |
O |
The password for the Pilot User . If not provided APIO will generate a random one |