addRoutingGroup()

This application is used to create a routing group.

Parameters:

  • name - Name of the routing group. String. Required.
  • policy - Comma separated list of policies. A policy can be "prefix", "preference", "order", "least_cost", "weight". String (1-64 characters). Required.
  • description - String. Optional.
  • i_media_relay - Integer. References the i_service key in the services table, only values with i_service_type = 1 (RTPProxy) could be used. Value 1 means built-in RTPProxy, nil corresponds From Connection value. Optional.
  • disable_onnet_routing - Boolean. Optional. Default is true.
  • onnet_i_connection - Integer. References the i_connection key in the connections table. Optional. Default is NULL.
  • disable_onnet_voicemail - Bool. Optional. Default is true.
  • onnet_voicemail_i_connection - Integer. References the i_connection key in the connections table. Optional. Default is NULL.
  • onnet_scope - Integer. Optional. Default is 1. Possible values:
    • 1 - All Accounts
    • 2 - Customer and Sub-Customers
    • 3 - Customer only.
  • lrn_enabled - Boolean. Optional. Default is false.
  • lrn_translation_rule - String. Optional.
  • timeout_2xx - The final 2xx timeout in seconds. Integer. Optional. Default is 300.
  • onnet_timeout_100 - Reply Timeout for On-Net calls. Integer. Optional. Default is 5.
  • onnet_timeout_1xx - 1xx Timeout for On-Net calls. Integer. Optional. Default is 10.
  • onnet_timeout_2xx - 2xx Timeout for On-Net calls. Integer. Optional. Default is 60.
  • stir_shaken_enabled - Whether Stir/Shaken should be enabled for the Routing Group. Boolean. Optional. The default value is false.

Returns:

  • result - OK - String.
  • i_routing_group - ID of the newly created routing group. Integer.
  • XMLRPC fault in case of any error.

listRoutingGroups()

This application is used to retrieve the list of the routing groups ordered by name.

Parameters:

  • name_pattern - Pattern to filter routing groups by name (SQL syntax for the ILIKE operator is used). String. Optional.
  • name_pattern_not - Pattern to exclude routing groups by name (SQL syntax for the ILIKE operator is used). String. Available since version 2025.
  • i_routing_group - Integer. Optional.
  • include_members_count - Boolean. Optional. If true, each list item includes members_count. Available since version 2025.
  • offset - number of matching rows to skip. Integer. Optional. Default is 0.
  • limit - maximum rows to return; at least 1. Integer. Optional. Default is 50.

Returns:

  • result - OK - String.
  • list - array of routing groups ordered by name. For the root customer, each item contains the fields documented in getRoutingGroupInfo(); since version 2025, safe_to_delete is populated as a Boolean and members_count (Integer) is added when include_members_count is true. For other customers, each item contains only i_routing_group (Integer) and name (String).
  • pagination- pagination metadata:
    • page - current page number (1-based). Integer.
    • items_per_page - requested limit. Integer.
    • total_items - matching rows before limit/offset. Integer.
  • XMLRPC fault in case of any error.

getRoutingGroupInfo()

Available since version Softswitch 2025 and FreightSwitch 2025.

This application is used to get a routing group detail.

Parameters:

  • i_routing_group - Id of a routing group. Integer. Required.

Returns:

  • result - OK - String.
  • routing_group- structure with routing group attributes:
    • i_routing_group - routing group identifier. Integer.
    • name - routing group name. String.
    • description - routing group description. String.
    • policy - comma-separated routing policies: prefix, preference, order, least_cost, weight. String.
    • i_media_relay - RTPProxy service identifier; 1 for the built-in RTPProxy, nil for From Connection. Integer or nil.
    • disable_onnet_routing - whether on-net routing is disabled. Boolean.
    • onnet_i_connection - on-net connection identifier. Integer or nil.
    • disable_onnet_voicemail - whether on-net voicemail is disabled. Boolean.
    • onnet_voicemail_i_connection - on-net voicemail connection identifier. Integer or nil.
    • onnet_scope - on-net scope: 1 = All Accounts, 2 = Customer and Sub-Customers, 3 = Customer only. Integer.
    • lrn_enabled - whether LRN is enabled. Boolean.
    • lrn_translation_rule - LRN translation rule. String or nil.
    • timeout_2xx - final 2xx timeout in seconds. Integer.
    • onnet_timeout_100 - reply timeout for on-net calls in seconds. Integer.
    • onnet_timeout_1xx - 1xx timeout for on-net calls in seconds. Integer.
    • onnet_timeout_2xx - 2xx timeout for on-net calls in seconds. Integer.
    • stir_shaken_enabled - whether Stir/Shaken is enabled. Boolean.
    • safe_to_delete - nil in this response. The Boolean flag is populated by listRoutingGroups() for the root customer.

XMLRPC fault is returned in case of any error.


updateRoutingGroup()

This application is used to update the properties of a routing group. Only supplied fields are changed.

Parameters:

  • i_routing_group - ID of the routing group. Integer. Required.
  • All other parameters as described for addRoutingGroup() are optional. policy may be empty on update.

Returns:

  • result - OK - String.
  • i_routing_group - ID of the updated routing group. Integer.
  • XMLRPC fault in case of any error.

delRoutingGroup()

This application is used to delete a routing group.

Parameters:

  • i_routing_group - ID of the routing group. Integer. Required.

Returns:

  • result - OK - String.
  • i_routing_group - ID of the deleted routing group. Integer.
  • XMLRPC fault in case of any error.

addRoutingGroupMember()

This application is used to add new entries to the routing group.

Parameters:

  • i_routing_group - ID of the routing group where the new entry should be added. Integer. Required.
  • i_connection - ID of a vendor connection. Integer. Required in <=2024 and optional since 2025 version.
  • i_connection_group - ID of a connection group. Integer. Optional. Available since version 2025.
  • i_destination_set - ID of a destination set. Integer. Required.
  • preference - The order # of the new record. Integer. Required.
  • activation_date - The activation date. Either dateTime.iso8601 format in UTC or String in format '%H:%M:%S.000 GMT %a %b %d %Y' (e.g. 09:57:29.000 GMT Mon May 29 2017). Optional. Not NULL, if not specified, defaults to now.
  • expiration_date - The expiration date. Either dateTime.iso8601 format in UTC or String in format '%H:%M:%S.000 GMT %a %b %d %Y' (e.g. 13:57:29.000 GMT Mon May 29 2017). Optional. NULL value means never, if not specified, defaults to never.
  • weight - The weight for the weighed distribution policy. Integer. Optional.
  • stir_shaken_as_mode - Stir/Shaken Authentication mode. It can be one of 'supported', 'required', 'preferred', or 'disabled'. String. Optional. The default value is 'supported'.

Specify exactly one of i_connection and i_connection_group.

Returns:

  • result - OK - String.
  • i_routing_group_member - The ID of the newly created entry. Integer.
  • XMLRPC fault in case of any error.

listRoutingGroupMembers()

This application is used to retrieve the entries assigned to the routing group.

Parameters:

  • i_routing_group - ID of the routing group. Integer. Required.
  • offset - number of matching rows to skip. Integer. Optional. Default is 0.
  • limit - maximum rows to return; at least 1. Integer. Optional. Default is 50.

Returns:

  • result - OK - String.
  • routing_group_members - Array of dictionaries. Each item includes i_routing_group_member, i_routing_group, i_connection, i_connection_group, i_vendor, i_destination_set, preference, activation_date, expiration_date, weight, and stir_shaken_as_mode. Date values use the legacy GMT string format.
  • pagination- pagination metadata:
    • page - current page number (1-based). Integer.
    • items_per_page - requested limit. Integer.
    • total_items - matching rows before limit/offset. Integer.
  • XMLRPC fault in case of any error.

getRoutingGroupMemberInfo()

Available since version Softswitch 2025 and FreightSwitch 2025.

This application is used to get a routing group member detail.

Parameters:

  • i_routing_group_member - ID of a routing group member. Integer. Required.

Returns:

  • result - OK - String.
  • routing_group_member- Structure with routing group member attributes:
    • i_routing_group_member - Integer.
    • i_routing_group - Integer.
    • i_connection - connection identifier; nil when a connection group is used. Integer or nil.
    • i_connection_group - connection group identifier; nil when a direct connection is used. Integer or nil.
    • i_vendor - vendor of the direct connection; nil when a connection group is used. Integer or nil.
    • i_destination_set - Integer.
    • preference - Integer.
    • activation_date - String.
    • expiration_date - expiration date in the legacy GMT string format; nil when there is no expiration. String or nil.
    • weight - Integer.
    • stir_shaken_as_mode - String.

XMLRPC fault is returned in case of any error.


updateRoutingGroupMember()

This application is used to update the properties of a routing group member.

Parameters:

  • i_routing_group_member - ID of the routing group entry. Integer. Required.
  • i_routing_group - ID of the routing group. Integer. Required for <=2024 and optional since 2025 version. If supplied, it must match the member's current routing group.
  • All other parameters as described for addRoutingGroupMember() are optional.

Returns:

  • result - OK - String.
  • i_routing_group_member - ID of the updated routing group member. Integer.
  • XMLRPC fault in case of any error.

delRoutingGroupMember()

This application is used to delete a routing group member.

Parameters:

  • i_routing_group_member - ID of the routing group entry. Integer. Required.
  • i_routing_group - ID of the routing group. Integer. Required for <=2024 and optional since 2025 version.

Returns:

  • result - OK - String.
  • i_routing_group_member - ID of the deleted routing group member. Integer.
  • XMLRPC fault in case of any error.