Call Centers Instances

Create instance

POST /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/services/call_centers/

Create a new call center in a group.

Example request:

POST /api/v1/tenants/foo/groups/foogroup/services/call_centers/ HTTP/1.1
Host: example.com

{
   "serviceUserId": "APIOTestCCBasic@sip.netaxis.be",
   "serviceInstanceProfile": {
      "name": "Test User Basic",
      "password": "test_password",
      "department": {
          "tenantId": "ApioSpTest",
          "groupId": "ApioGrpTest",
          "departmentName": "test_department_initial"
      },
      "cliFirstName": "First Name",
      "cliLastName": "Last Name",
      "language": "English",
      "timeZone": "Europe/Brussels"
   }
   "type": "Basic",
   "policy": "Regular",
   "templateName": "basic"
}
Request JSON Object:

Example response:

Response:

Similar to GET instance method response.

Status Codes:

Retrieve instance

GET /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/services/call_centers/(string: call_center_name)/

Retrieve a call center.

Example request:

GET /api/v1/tenants/foo/groups/foogroup/services/call_centers/APIOTestCCBasic@sip.netaxis.be/ HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK

{
   "callCenterInstance": {
      "serviceUserId": "APIOTestCCBasic@sip.netaxis.be",
      "serviceInstanceProfile": {
         "name": "Test User Basic",
         "cliFirstName": "First Name",
         "cliLastName": "Last Name",
         "language": "English",
         "timeZone": "Europe/Brussels",
         "phoneNumber": "",
         "department": {
              "tenantId": "ApioSpTest",
              "groupId": "ApioGrpTest",
              "departmentName": "test_department_initial"
         },
         "extension": "",
         "cliPhoneNumber": null,
         "publicUserIdentity": ""
      },
      "policy": "Regular",
      "type": "Basic",
      "routingType": "Priority Based",
      "queueLength": 0,
      "enableReporting": false,
      "allowCallerToDialEscapeDigit": true,
      "escapeDigit": "0",
      "resetCallStatisticsUponEntryInQueue": false,
      "allowAgentLogoff": false,
      "allowCallWaitingForAgents": false,
      "allowCallsToAgentsInWrapUp": false,
      "overrideAgentWrapUpTime": false,
      "wrapUpSeconds": 0,
      "forceDeliveryOfCalls": false,
      "forceDeliveryWaitTimeSeconds": 1,
      "enableAutomaticStateChangeForAgents": false,
      "agentStateAfterCall": "Available",
      "agentUnavailableCode": "",
      "externalPreferredAudioCodec": "None",
      "internalPreferredAudioCodec": "None",
      "playRingingWhenOfferingCall": true,
      "callCenterQueueThresholdsIsActive": false,
      "networkClassOfService": ""
   }
}
Response JSON Object:
Status Codes:

Retrieve list instances

GET /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/services/call_centers/

Retrieve the list of call centers.

Example request:

GET /api/v1/tenants/foo/groups/foogroup/services/call_centers/ HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK

{
   "call_centers": [
      {
         "serviceUserId": "APIOTestCCBasic@sip.netaxis.be",
         "name": "Test User Basic",
         "phoneNumber": "",
         "extension": "",
         "department": {
              "tenantId": "ApioSpTest",
              "groupId": "ApioGrpTest",
              "departmentName": "test_department_initial",
              "fullPathName": "test_department_parent_1 \\ test_department_initial"
         },
         "active": true,
         "policy": "Regular",
         "type": "Basic"
      }
   ]
}
Response JSON Object:
Status Codes:

Update instance

PUT /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/services/call_centers/(string: call_center_name)/

Update a call center.

Example request:

PUT /api/v1/tenants/foo/groups/foogroup/services/call_centers/APIOTestCCBasic@sip.netaxis.be/ HTTP/1.1
Host: example.com

{
   "serviceInstanceProfile": {
       "language": "French"
   },
   "queueLength": 10
}
Request JSON Object:

Example response:

Response:

Similar to GET instance method response.

Status Codes:

Delete instance

DELETE /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/services/call_centers/(string: call_center_name)/

Delete a call center.

Example request:

DELETE /api/v1/tenants/foo/groups/foogroup/services/call_centers/APIOTestCCBasic@sip.netaxis.be/ HTTP/1.1
Host: example.com

Example response:

HTTP/1.1 200 OK
Status Codes:

Update Call Centers’s active status

PUT /api/v1/tenants/(string: tenant_id)/groups/(string: group_id)/services/call_centers/active_instance/

Update the active status of Call Center instances.

Example request:

PUT /api/v1/tenants/foo/groups/foogroup/services/call_centers/call_centers/active_instance/ HTTP/1.1
Host: example.com

{
   "services": [
      {
          "serviceUserId": "APIOTestCCBasic@sip.netaxis.be",
          "active": true
      }
   ]
}
Request JSON Object:

Example response:

HTTP/1.1 200 OK

{}
Status Codes:

Configuration Information for CC Management

In the POST API, when creating a call center, it is possible to configure APIO to generate automatically the service user ID according to a specific rule.

The APIO behaviour for the call center automatic service user ID generation is controlled by the following setting:

"AUTOMATIC_ID_RULES": {
    "SUID_CALL_CENTER_AUTO_GENERATE": true,
    "SUID_CALL_CENTER_RULE": "{{group_id}}_cc{{RND_4}}@{{domain}}"
}
Settings description:
  • SUID_CALL_CENTER_AUTO_GENERATE: APIO will enable the auto-generation of call center service ids. Default is false, it must be set to true to have this feature working.

  • SUID_CALL_CENTER_RULE: the formatting rule for the call center service user id. Default is “{{group_id}}_cc{{RND_4}}@{{domain}}”.

If the service user id number is built using the phone number in the generation rule, it is possible to configure APIO to change the service user io according to phone number modification on PUT request.

The APIO behaviour for the call center automatic service user id modification is controlled by the following setting:

"AUTOMATIC_ID_RULES": {
     "SERVICE_USERS_UPDATE_ID_PHONE_NUMBER": true
 }
Settings description:
  • SERVICE_USERS_UPDATE_ID_PHONE_NUMBER: APIO will enable the auto-update of the service ids of all type of service users. Default is False, it must be set to have this feature working with phone numbers based service user ids and containing any of “{{phone_number_e164}}”, “{{country_code}}” or “{{national_no_0}}” placeholders in id generation rule.

The formatting of the phone Number in the List answer is controlled by the following settings:

"GROUP_NUMBERS_USE_CC_CLI": false
With following parameters:
  • GROUP_NUMBERS_USE_CC_CLI, the OCI documentation says explicitly the numbers will be returned in E164. But it has been reported that sometimes it is not the case, and we have no info from Cisco about this. This parameter is used in some APIs (in this page the answer of the GET Hunt Groups List) to implement a workaround that will assume that the number is in national format if same country code as Grouo CLi. It is based on observations and not on Cisco doc. Therefore toi be used carefully

Configuration Information for the Passwords

The Call Centers are Service Users therefore for their passwords (checking if valid or generating one) therefore it is the same rules and configuration settings that apply.

See: Configuration Information for the Password.