NAV Navigation
Shell Node.js HTTP

Alvaria™ Cloud Provisioning REST API v2.0.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Overview

The Alvaria™ Cloud Provisioning REST APIs enable developers to retrieve and manage properties related to Alvaria™ Cloud resources. Consumers of these APIs can access specific Via information pertaining to users, teams, work types, and system external dials. All resource instances must be accessed using Alvaria supplied identifiers. The data queried and returned will pertain to the organization supplied.

Base URLs:

License: License: Creative Commons Attribution 4.0 International Public License

Authentication

Scope Scope Description
provisioningapi Manage the provisioning resources
ConfigurationService Manage the provisioning resources

Users

Get UsersCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users

Used to retrieve a list of Users

Parameters

Name In Type Required Description
email query string false The email address of the user.
preferredNameValue query string false Preferred name of a user, which is the user's first and last name.
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
startIndex query integer false Index of the starting record. This is used to set the beginning record for the result set when multiple GET Collection requests are required due to the pagination of a large result set.
maxResults query integer false Maximum results. This is used to specify the maximum number of records to return in the result set. You can use this to set a result set limit that is less than the system/API-specific limit.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#userList",
  "users": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      }
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response UsersCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No User exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get User

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}

Used to retrieve a list of Users

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
userId path string true The Alvaria generated unique identifier for the user instance. The ID is determined through the GET /users endpoint.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#user",
  "id": "Id",
  "user": "user1@orgname.com",
  "userReference": {
    "organizationId": "exampleOrgId",
    "userId": "134302066600001"
  },
  "firstName": "userFName",
  "lastName": "userLName",
  "preferredName": {
    "locale": "en-US",
    "value": "alvaria user"
  },
  "description": "This is an entity",
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "active": true,
  "memberOf": {
    "teamReference": {
      "organizationId": "exampleOrgId",
      "teamId": "team1"
    },
    "name": [
      {
        "locale": "en-US",
        "value": "sales"
      }
    ]
  }
}

Responses

Status Meaning Description Schema
200 OK Successful response User
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No User exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get UsersManagedTeams

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/managerOf \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/managerOf',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/managerOf HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/managerOf

Used to retrieve a list of teams managed by this User

Parameters

Name In Type Required Description
userId path string true The Alvaria generated unique identifier for the user instance. The ID is determined through the GET /users endpoint.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#teamList",
  "teams": [
    {
      "active": true,
      "kind": "via#team",
      "id": "team1",
      "teamReference": {
        "organizationId": "org1",
        "teamId": "team1"
      },
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "alphaTeam"
        }
      ]
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response TeamCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No User exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get UserWorkHandlerRules

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules

Retrieves settings for the agent specified by 'userId.'

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
userId path string true Alvaria-generated unique ID for a work type
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workHandlerRules",
  "version": 1002,
  "canAddAttachments": true,
  "canBlindTransfer": true,
  "canCallBackSelf": true,
  "canCallBackWorkType": true,
  "canChangePhoneInPreview": true,
  "canConference": true,
  "canConsult": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canRecord": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "canWarmTransfer": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "emailDeliveryType": "push",
  "isTimedPreview": true,
  "maxCallBackDays": 5,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisplayPastCallBackWarning": true,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "previewTimeout": 30,
  "urlForwardType": "auto",
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "canDeleteVoicemail": true,
  "canForwardVoicemail": true,
  "canNotReady": true,
  "canPark": true,
  "isOnDemand": true,
  "maxEmailInteractions": 5,
  "maxMessageInteractions": 5,
  "maxTotalInteractions": 5,
  "mustDisplayWorkTypes": true,
  "mustSelectWorkType": true,
  "parkWarningTime": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response UserWorkHandlerRules
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No user exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Put UserWorkHandlerRules

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "version": 1002,
  "canCallBackSelf": true,
  "canDial": true,
  "canPauseResumeRecording": true,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "canDeleteVoicemail": true,
  "canForwardVoicemail": true,
  "canNotReady": true,
  "canPark": true,
  "isOnDemand": true,
  "maxEmailInteractions": 5,
  "maxMessageInteractions": 5,
  "maxTotalInteractions": 5,
  "mustSelectWorkType": true,
  "parkWarningTime": 5
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/users/{userId}/workHandlerRules

Update settings for the agent specified by 'userId.'

Body parameter

{
  "version": 1002,
  "canCallBackSelf": true,
  "canDial": true,
  "canPauseResumeRecording": true,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "canDeleteVoicemail": true,
  "canForwardVoicemail": true,
  "canNotReady": true,
  "canPark": true,
  "isOnDemand": true,
  "maxEmailInteractions": 5,
  "maxMessageInteractions": 5,
  "maxTotalInteractions": 5,
  "mustSelectWorkType": true,
  "parkWarningTime": 5
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
userId path string true Alvaria-generated unique ID for a work type
body body PutUserWorkHandlerRulesRequest true none
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workHandlerRules",
  "version": 1002,
  "canAddAttachments": true,
  "canBlindTransfer": true,
  "canCallBackSelf": true,
  "canCallBackWorkType": true,
  "canChangePhoneInPreview": true,
  "canConference": true,
  "canConsult": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canRecord": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "canWarmTransfer": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "emailDeliveryType": "push",
  "isTimedPreview": true,
  "maxCallBackDays": 5,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisplayPastCallBackWarning": true,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "previewTimeout": 30,
  "urlForwardType": "auto",
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "canDeleteVoicemail": true,
  "canForwardVoicemail": true,
  "canNotReady": true,
  "canPark": true,
  "isOnDemand": true,
  "maxEmailInteractions": 5,
  "maxMessageInteractions": 5,
  "maxTotalInteractions": 5,
  "mustDisplayWorkTypes": true,
  "mustSelectWorkType": true,
  "parkWarningTime": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response UserWorkHandlerRules
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No user exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get UserWorkTypesCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes

Retrieve the list of work types that the user is assigned to. The list may be filtered by work type direction (inbound, outreach) and/or channel type (voice, email, chat, sms)

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
direction query string false Direction of a work type. This is used to filter by work type direction.
channelType query string false Work type channel. This is used to filter by work type channel.
orgId path string true Name of a customer organization.
userId path string true The Alvaria generated unique identifier for the user instance. The ID is determined through the GET /users endpoint.

Enumerated Values

Parameter Value
direction inbound
direction outreach
channelType voice
channelType email
channelType chat
channelType sms

Example responses

200 Response

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get list of online agents for consultation or transfer

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes/{workTypeId}/onlineAgents \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes/{workTypeId}/onlineAgents',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes/{workTypeId}/onlineAgents HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/workTypes/{workTypeId}/onlineAgents

Retrieves the list of online agents who may be consulted or transferred an interaction from the specified work type.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
userId path string true The Alvaria generated unique identifier for the user instance. The ID is determined through the GET /users endpoint.
workTypeId path string true Alvaria-generated unique ID for a work type
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#userList",
  "users": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      }
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response UsersCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No User exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get Outreach work types allowing callbacks

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/callBackWorkTypes \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/callBackWorkTypes',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/callBackWorkTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/callBackWorkTypes

Retrieves the list of Outreach work types allowing the scheduling of callbacks.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
userId path string true The Alvaria generated unique identifier for the user instance. The ID is determined through the GET /users endpoint.
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#callBackWorkTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#callBackWorkType",
      "id": 82,
      "friendlyName": {
        "locale": "en-US",
        "value": "entity name"
      },
      "maxCallBackDays": 30,
      "canCallBackWorkType": true,
      "canCallBackSelf": true,
      "mustDisplayPastCallBackWarning": true,
      "state": "inactive"
    }
  ],
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Success - OK CallBackWorkTypeList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get collection of hidden work types for a given user

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes

Retrieve the list of work types that should not appear in a user's transfer destination list.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
userId path string true Alvaria-generated unique ID for a user
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Replace collection of hidden work types for a given user

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "workTypes": [
    {
      "id": "5H9GYF.127"
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/users/{userId}/hiddenWorkTypes

This API updates the user's list of work types that should be filtered from the list of transfer destinations presented to an agent while on an interaction.

Body parameter

{
  "workTypes": [
    {
      "id": "5H9GYF.127"
    }
  ]
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
userId path string true Alvaria-generated unique ID for a user
body body PutHiddenWorkTypesRequest true none
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeList

Get the collection of work types to which this user may transfer an interaction

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/destinationWorkTypes \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/destinationWorkTypes',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/destinationWorkTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/destinationWorkTypes

Retrieve the collection of configured work types that should appear in a user's transfer destination list.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
userId path string true Alvaria-generated unique ID for a user
direction query string false Direction of a work type. This is used to filter by work type direction.
channelType query string false Work type channel. This is used to filter by work type channel.
orgId path string true Name of a customer organization.

Enumerated Values

Parameter Value
direction inbound
direction outreach
channelType voice
channelType email
channelType chat
channelType sms

Example responses

200 Response

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Teams

Get Teams

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/teams

Used to retrieve a list of teams

Parameters

Name In Type Required Description
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
startIndex query integer false Index of the starting record. This is used to set the beginning record for the result set when multiple GET Collection requests are required due to the pagination of a large result set.
maxResults query integer false Maximum results. This is used to specify the maximum number of records to return in the result set. You can use this to set a result set limit that is less than the system/API-specific limit.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#teamList",
  "teams": [
    {
      "active": true,
      "kind": "via#team",
      "id": "team1",
      "teamReference": {
        "organizationId": "org1",
        "teamId": "team1"
      },
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "alphaTeam"
        }
      ]
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response TeamCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get TeamMembers

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamMembers \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamMembers',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamMembers HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamMembers

Used to retrieve all members and owners of an Alvaria™ Cloud team. The 'state' field will be deprecated.

Parameters

Name In Type Required Description
state query string false Filters users returned to those in the provided state. The filter will be deprecated.
orgId path string true Name of a customer organization.
teamId path string true Alvaria-generated unique ID for a team
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Enumerated Values

Parameter Value
state Uninitialized
state Logged On
state Active
state Idle
state Not Ready
state Preview
state Wrap
state Park
state Park Warning
state Wrap Warning
state Reserved
state MultiLine
state Held
state Pending Active
state Logged Off
state User Cleared
state All

Example responses

200 Response

{
  "kind": "via#teamState",
  "teamMembers": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      },
      "state": "deprecated"
    }
  ],
  "lastIndexReturned": 1,
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response TeamMembersState
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Team exists for the provided entity ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get TeamOwners

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamOwners \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamOwners',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamOwners HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/teams/{teamId}/teamOwners

Used to retrieve all members and owners of an Alvaria™ Cloud team. The 'state' field will be deprecated.

Parameters

Name In Type Required Description
state query string false Filters users returned to those in the provided state. The filter will be deprecated.
orgId path string true Name of a customer organization.
teamId path string true Alvaria-generated unique ID for a team
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Enumerated Values

Parameter Value
state Uninitialized
state Logged On
state Active
state Idle
state Not Ready
state Preview
state Wrap
state Park
state Park Warning
state Wrap Warning
state Reserved
state MultiLine
state Held
state Pending Active
state Logged Off
state User Cleared
state All

Example responses

200 Response

{
  "kind": "via#teamState",
  "teamOwners": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      },
      "state": "deprecated"
    }
  ],
  "lastIndexReturned": 1,
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response TeamOwnersState
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Team exists for the provided entity ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get TeamAllUsers

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/allUsers \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/allUsers',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/teams/{teamId}/allUsers HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/teams/{teamId}/allUsers

Used to retrieve all members and owners of an Alvaria™ Cloud team. The 'state' field will be deprecated.

Parameters

Name In Type Required Description
state query string false Filters users returned to those in the provided state. The filter will be deprecated.
teamId path string true Alvaria-generated unique ID for a team
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Enumerated Values

Parameter Value
state Uninitialized
state Logged On
state Active
state Idle
state Not Ready
state Preview
state Wrap
state Park
state Park Warning
state Wrap Warning
state Reserved
state MultiLine
state Held
state Pending Active
state Logged Off
state User Cleared
state All

Example responses

200 Response

{
  "kind": "via#teamState",
  "users": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      },
      "state": "deprecated"
    },
    {
      "active": true,
      "kind": "via#user",
      "id": "user2",
      "user": "user2@orgname.com",
      "firstName": "alvaria",
      "lastName": "User2",
      "preferredName": {
        "locale": "en-US",
        "value": "User2"
      },
      "state": "deprecated"
    }
  ],
  "teamOwners": [
    {
      "active": true,
      "kind": "via#user",
      "id": "owner1",
      "user": "owner1@orgname.com",
      "firstName": "John",
      "lastName": "Doe",
      "preferredName": {
        "locale": "en-US",
        "value": "John Doe"
      },
      "state": "deprecated"
    }
  ],
  "lastIndexReturned": 1,
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response AllUsersState
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Team exists for the provided entity ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

SystemExternals

Get SystemExternalList

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/systemExternals

Used to retrieve a list of SystemExternals

Parameters

Name In Type Required Description
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
startIndex query integer false Index of the starting record. This is used to set the beginning record for the result set when multiple GET Collection requests are required due to the pagination of a large result set.
maxResults query integer false Maximum results. This is used to specify the maximum number of records to return in the result set. You can use this to set a result set limit that is less than the system/API-specific limit.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#systemExternalCollection",
  "systemExternals": [
    {
      "active": true,
      "kind": "via#systemExternal",
      "id": "external1",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "externalNumber"
        }
      ],
      "systemExternal": "1234567890"
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response SystemExternalCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No System External Dial exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Post SystemExternal

Code samples

# You can also use wget
curl -X POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals',
{
  method: 'POST',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

POST /via/v2/organizations/{orgId}/provisioning/systemExternals

Used to create a SystemExternal Dial

Body parameter

{
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Parameters

Name In Type Required Description
body body SystemExternalPost true The System External Dial to be created.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

201 Response

{
  "kind": "via#systemExternal",
  "active": true,
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "id": "0cd42b5e-e3ea-45fc-b643-bf0b17539bed",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Responses

Status Meaning Description Schema
201 Created Successful response SystemExternal
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
409 Conflict Client Error - Conflict Error
422 Unprocessable Entity Validation exception Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get SystemExternal

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}

Used to retrieve a list of SystemExternals

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.
systemExternalId path string true Alvaria-generated unique identifier for the System External

Example responses

200 Response

{
  "kind": "via#systemExternal",
  "active": true,
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "id": "0cd42b5e-e3ea-45fc-b643-bf0b17539bed",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Responses

Status Meaning Description Schema
200 OK Successful response SystemExternal
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No System External Dial exists for the provided ID Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Put SystemExternal

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "kind": "via#systemExternal",
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890",
  "version": 1002
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}

Used to update a SystemExternal Dial

Body parameter

{
  "kind": "via#systemExternal",
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890",
  "version": 1002
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
body body SystemExternalPut true The updated representation of the System External Dial.
orgId path string true Name of a customer organization.
systemExternalId path string true Alvaria-generated unique identifier for the System External

Example responses

200 Response

{
  "kind": "via#systemExternal",
  "active": true,
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "id": "0cd42b5e-e3ea-45fc-b643-bf0b17539bed",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Responses

Status Meaning Description Schema
200 OK Successful response SystemExternal
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No System External Dial exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
409 Conflict Another client has updated this System External Dial instance so the requested changes are in conflict. A new GET operation must be performed on the System Speed Dial instance to retrieve a new lastModifiedTimestamp or version and reissue the PUT request. Error
422 Unprocessable Entity Validation exception Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Patch SystemExternal

Code samples

# You can also use wget
curl -X PATCH https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "version": 1002,
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}',
{
  method: 'PATCH',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PATCH https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PATCH /via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}

Used to patch a SystemExternal Dial

Body parameter

{
  "version": 1002,
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
body body SystemExternalPatch true Updated representation of the System External Dial.
orgId path string true Name of a customer organization.
systemExternalId path string true Alvaria-generated unique identifier for the System External

Example responses

200 Response

{
  "kind": "via#systemExternal",
  "active": true,
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "id": "0cd42b5e-e3ea-45fc-b643-bf0b17539bed",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Responses

Status Meaning Description Schema
200 OK Successful response SystemExternal
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No System External Dial exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
409 Conflict Another client has updated this System External Dial instance so the requested changes are in conflict. A new GET operation must be performed on the System Speed Dial instance to retrieve a new lastModifiedTimestamp or version and reissue the PATCH request. Error
422 Unprocessable Entity Validation exception Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Delete SystemExternal

Code samples

# You can also use wget
curl -X DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

DELETE /via/v2/organizations/{orgId}/provisioning/systemExternals/{systemExternalId}

Used to delete a SystemExternal Dial

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.
systemExternalId path string true Alvaria-generated unique identifier for the System External

Example responses

400 Response

{
  "error": {
    "code": "XXX",
    "message": "Error description",
    "errors": [
      {
        "scope": "error.scope",
        "reason": "error.reason",
        "message": "error.message"
      }
    ]
  }
}

Responses

Status Meaning Description Schema
204 No Content Successful response None
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Entity exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
408 Request Timeout Request Timeout Error
422 Unprocessable Entity The specified Entity has associations and cannot be deleted Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

WorkTypes

Get WorkTypeDispositions

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/dispositions \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/dispositions',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/dispositions HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/dispositions

Retrieves details about the dispositions assigned to a work type's assigned disposition routing plan.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for a work type
dispositionType query string false This may be used to filter by disposition type.
orgId path string true Name of a customer organization.

Enumerated Values

Parameter Value
dispositionType systemDefined
dispositionType userDefined

Example responses

200 Response

{
  "kind": "via#dispositionCollection",
  "dispositions": [
    {
      "kind": "via#disposition",
      "id": "8.8",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Fax Machine"
        }
      ],
      "dispositionCode": "DFM",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": {
        "reporting": [
          "abandon",
          "contact",
          "followUp"
        ],
        "callOutcome": [
          "success",
          "callback",
          "refusal",
          "exclusion"
        ],
        "routing": [
          "none",
          "sendDigits",
          "default",
          "hangUp",
          "playMessage",
          "redial",
          "transfer",
          "rerouteToSelfService",
          "dialNextNumber"
        ]
      }
    },
    {
      "kind": "via#disposition",
      "id": "2.2",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Dialer Dropped Cust After Hold"
        }
      ],
      "dispositionCode": "DAD",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "13.13",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Connect After Hold"
        }
      ],
      "dispositionCode": "DPN",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "55.55",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Business Detected"
        }
      ],
      "dispositionCode": "SW_DBS",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "112.112",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "My Custom Disposition"
        }
      ],
      "dispositionCode": "MCD",
      "dispositionType": "userDefined",
      "active": true
    }
  ],
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response DispositionCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Work Type exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get WorkTypeCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes

Retrieve a list of all work types. The list may be filtered by work type direction (inbound, outreach), channel type (voice, email, chat, sms), queue type (terminal, longest idle), and whether the work type's handlers can initiate outbound email.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
direction query string false Direction of a work type. This is used to filter by work type direction.
workTypeRules.email query string false Email work type rules
queueType query string false Type of queue. This is used to filter by queue type.
channelType query string false Work type channel. This is used to filter by work type channel.
friendlyName query string false Name of a specific work type to fetch
orgId path string true Name of a customer organization.

Enumerated Values

Parameter Value
direction inbound
direction outreach
workTypeRules.email CanInitiateNewOutboundEmail
queueType longestIdle
queueType terminal
channelType voice
channelType email
channelType chat
channelType sms

Example responses

200 Response

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get Outreach SMS WorkType

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/outreachSMSWorkType/{workTypeId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/outreachSMSWorkType/{workTypeId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/outreachSMSWorkType/{workTypeId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/outreachSMSWorkType/{workTypeId}

Used to retrieve an Outreach SMS WorkType

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for an Outreach SMS Worktype

Example responses

200 Response

{
  "defaultServiceProviderId": 7,
  "defaultServiceProviderAccountId": 12345,
  "defaultCallerId": 1,
  "serviceProviderShortCode": 12234456678,
  "vsn": "script@org",
  "kind": "via#workType",
  "active": true,
  "version": 1002,
  "id": "7.7",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MREhubEmail"
    }
  ],
  "dispPlanId": "7",
  "channel": {
    "channelType": "voice"
  },
  "direction": "outreach",
  "emailAddress": "sales@alvaria.com",
  "dailyServiceLevel": true,
  "workTypeClassification": "OutreachSMSWorkType",
  "serviceLevelFormulaId": "ServiceLevel0",
  "serviceLevelWindow": 1,
  "shortCallInterval": 1,
  "serviceLevelThreshold": 2,
  "targetServiceLevelPercentage": 3.1,
  "workTypeGroupId": 18,
  "state": "inactive",
  "contactDataDefId": 22,
  "transcriptionType": "postcall",
  "language": "en-US"
}

Responses

Status Meaning Description Schema
200 OK Successful response OutreachSMSWorkType
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Outreach SMS Work Type exists for the provided ID Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get Outreach Email WorkType

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/outreachEmailWorkType/{workTypeId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/outreachEmailWorkType/{workTypeId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/outreachEmailWorkType/{workTypeId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/outreachEmailWorkType/{workTypeId}

Used to retrieve an Outreach Email WorkType

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for an Outreach Email Worktype

Example responses

200 Response

{
  "fromName": "Alvaria Sales",
  "fromAddress": "no-reply@alvaria.com",
  "kind": "via#workType",
  "active": true,
  "version": 1002,
  "id": "7.7",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MREhubEmail"
    }
  ],
  "dispPlanId": "7",
  "channel": {
    "channelType": "voice"
  },
  "direction": "outreach",
  "emailAddress": "sales@alvaria.com",
  "dailyServiceLevel": true,
  "workTypeClassification": "OutreachSMSWorkType",
  "serviceLevelFormulaId": "ServiceLevel0",
  "serviceLevelWindow": 1,
  "shortCallInterval": 1,
  "serviceLevelThreshold": 2,
  "targetServiceLevelPercentage": 3.1,
  "workTypeGroupId": 18,
  "state": "inactive",
  "contactDataDefId": 22,
  "transcriptionType": "postcall",
  "language": "en-US"
}

Responses

Status Meaning Description Schema
200 OK Successful response OutreachEmailWorkType
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Outreach Email Worktype exists for the provided ID Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get WorkType

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}

Used to retrieve a WorkType

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for a work type
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workType",
  "active": true,
  "version": 1002,
  "id": "7.7",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MREhubEmail"
    }
  ],
  "dispPlanId": "7",
  "channel": {
    "channelType": "voice"
  },
  "direction": "outreach",
  "emailAddress": "sales@alvaria.com",
  "dailyServiceLevel": true,
  "workTypeClassification": "OutreachSMSWorkType",
  "serviceLevelFormulaId": "ServiceLevel0",
  "serviceLevelWindow": 1,
  "shortCallInterval": 1,
  "serviceLevelThreshold": 2,
  "targetServiceLevelPercentage": 3.1,
  "workTypeGroupId": 18,
  "state": "inactive",
  "contactDataDefId": 22,
  "transcriptionType": "postcall",
  "language": "en-US"
}

Responses

Status Meaning Description Schema
200 OK Successful response WorkType
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Work Type exists for the provided ID Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get WorkHandlersCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers

Retrieve the list of agents assigned to a specific work type instance.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for a work type
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workHandlerCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "workHandlers": [
    {
      "id": "cb221217800211"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkHandlerCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Put WorkHandlersCollection

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "version": 1002,
  "workHandlers": [
    {
      "id": "cb221217800211"
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlers

This API updates the work type instance indicated by the workTypeId with a new ordered list of agents. Agents from a previous GET operation can be used to provide an updated ordering in this call. Alternatively, agents may be removed and/or added from the list retrieved in a previous GET operation. Configuration Manager Considerations. WorkType instances can be modified through the Configuration Manager as well as programmatically through these API endpoints. This means that updates issued successfully through the API could subsequently be changed through the Configuration Manager and vice versa, inadvertently changing expected routing behavior. Care should be taken when making workType changes in the Configuration Manager, especially agent assignment, when using the provisioning REST APIs.

Body parameter

{
  "version": 1002,
  "workHandlers": [
    {
      "id": "cb221217800211"
    }
  ]
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for a work type
body body PostWorkHandlersRequest true none
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workHandlerCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "workHandlers": [
    {
      "id": "cb221217800211"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkHandlerCollection

Get WorkTypeWorkHandlerRules

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules

Gets a collection of agent settings for the Work Type specified by 'workTypeId.'

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for a work type
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workHandlerRules",
  "version": 1002,
  "canAddAttachments": true,
  "canBlindTransfer": true,
  "canCallBackSelf": true,
  "canCallBackWorkType": true,
  "canChangePhoneInPreview": true,
  "canConference": true,
  "canConsult": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canRecord": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "canWarmTransfer": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "emailDeliveryType": "push",
  "isTimedPreview": true,
  "maxCallBackDays": 5,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisplayPastCallBackWarning": true,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "previewTimeout": 30,
  "urlForwardType": "auto",
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "isAuthenticated": false
}

Responses

Status Meaning Description Schema
200 OK Successful response WorkTypeWorkHandlerRules
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Work Type exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Put WorkTypeWorkHandlerRules

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "version": 1002,
  "canAddAttachments": true,
  "can3WayXfer": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisposition": true,
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "isAuthenticated": false
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/workHandlerRules

Update a collection of agent settings for the Work Type specified by 'workTypeId.'

Body parameter

{
  "version": 1002,
  "canAddAttachments": true,
  "can3WayXfer": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisposition": true,
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "isAuthenticated": false
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria-generated unique ID for a work type
body body PutWorkTypeWorkHandlerRulesRequest true none
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workHandlerRules",
  "version": 1002,
  "canAddAttachments": true,
  "canBlindTransfer": true,
  "canCallBackSelf": true,
  "canCallBackWorkType": true,
  "canChangePhoneInPreview": true,
  "canConference": true,
  "canConsult": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canRecord": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "canWarmTransfer": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "emailDeliveryType": "push",
  "isTimedPreview": true,
  "maxCallBackDays": 5,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisplayPastCallBackWarning": true,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "previewTimeout": 30,
  "urlForwardType": "auto",
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "isAuthenticated": false
}

Responses

Status Meaning Description Schema
200 OK Successful response WorkTypeWorkHandlerRules
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
404 Not Found No Work Type exists for the provided ID Error
405 Method Not Allowed Method Not Allowed Error
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get WorkTypeAudioMessagesCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/audioMessages \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/audioMessages',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/audioMessages HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/audioMessages

Retrieves the collection of audio messages associated to the work type specified by 'workTypeId'

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true The Alvaria generated unique identifier for the work type instance.

Example responses

200 Response

{
  "kind": "via#audioMessagesList",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "audioMessages": [
    {
      "kind": "via#audiomessage",
      "id": 53,
      "language": "en-US",
      "duration": 20,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Success - OK AudioMessageCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found None
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 Access-Control-Allow-Origin string none

Get WorkTypesEmailTemplatesCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates

Get WorkTypesEmailTemplatesCollection

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria generated unique identifier for the work type instance.

Example responses

200 Response

{
  "kind": "via#workTypeEmailTemplateFragmentCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "emailTemplates": [
    {
      "active": true,
      "kind": "via#emailTemplate",
      "id": 7,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "subject": "information",
      "templateType": "standardResponse"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeEmailTemplateFragmentCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Put WorkTypesEmailTemplatesCollection

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "version": 1002,
  "emailTemplates": [
    {
      "id": 7
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates

Removes all existing associations to email templates for the work type specified by workTypeId and adds associations for email templates specified in the body of the request.

Body parameter

{
  "version": 1002,
  "emailTemplates": [
    {
      "id": 7
    }
  ]
}

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria generated unique identifier for the work type instance.
body body PutWorkTypesEmailTemplatesRequest true none

Example responses

200 Response

{
  "kind": "via#workTypeEmailTemplateFragmentCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "emailTemplates": [
    {
      "active": true,
      "kind": "via#emailTemplate",
      "id": 7,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "subject": "information",
      "templateType": "standardResponse"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeEmailTemplateFragmentCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Post WorkTypesEmailTemplate

Code samples

# You can also use wget
curl -X POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId}',
{
  method: 'POST',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

POST /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId}

Adds the email template specified by emailTemplateId to the work type specified by workTypeId. This request has no body.

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria generated unique identifier for the work type instance.
emailTemplateId path string true Alvaria generated unique identifier for the email template instance.

Example responses

200 Response

{
  "kind": "via#workTypeEmailTemplateFragmentCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "emailTemplates": [
    {
      "active": true,
      "kind": "via#emailTemplate",
      "id": 7,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "subject": "information",
      "templateType": "standardResponse"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeEmailTemplateFragmentCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Delete WorkTypesEmailTemplate

Code samples

# You can also use wget
curl -X DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

DELETE /via/v2/organizations/{orgId}/provisioning/workTypes/{workTypeId}/emailTemplates/{emailTemplateId}

Removes the email template specified by emailTemplateId from the existing list of email templates associated to the work type specified by workTypeId.

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeId path string true Alvaria generated unique identifier for the work type instance.
emailTemplateId path string true Alvaria generated unique identifier for the email template instance.

Example responses

400 Response

{
  "code": "XXX",
  "message": "Error description",
  "errors": [
    {
      "scope": "error.scope",
      "reason": "error.reason",
      "message": "error.message"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Success - No Content None
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

DispositionRoutingPlans

Get DispositionRoutingPlanCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans

Retrieves a list of disposition routing plans. List may be optionally filtered by channel type.

Parameters

Name In Type Required Description
channelType query string false filters results based on Disposition Routing Plan channel type, Example= voice,chat,email
orgId path string true none
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Enumerated Values

Parameter Value
channelType voice
channelType email
channelType chat
channelType sms
channelType screen

Example responses

200 Response

{
  "kind": "via#dispositionRoutingPlanList",
  "dispositionRoutingPlans": [
    {
      "kind": "via#dispositionRoutingPlan",
      "id": "7",
      "channels": [
        {
          "channelType": "voice"
        },
        {
          "channelType": "email"
        }
      ],
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "active": true
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK DispositionRoutingPlanCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get DispositionRoutingPlanRules

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans/{dispPlanId}/rules \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans/{dispPlanId}/rules',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans/{dispPlanId}/rules HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/dispositionRoutingPlans/{dispPlanId}/rules

Retrieves a list of dispositions that belong to the disposition routing plan specified by dispPlanId.

Parameters

Name In Type Required Description
dispPlanId path string true none
orgId path string true none
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#dispositionRoutingPlanRulesList",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "rules": [
    {
      "kind": "via#dispositionRoutingPlanRules",
      "id": "40",
      "dispositionCode": "CC_EXP",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK DispositionRoutingPlanRulesCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

WorkTypeGroups

Get WorkTypeGroupsCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypeGroups \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypeGroups',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypeGroups HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypeGroups

Retrieve a list of all work type groups.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workTypeGroupList",
  "workTypeGroups": [
    {
      "active": true,
      "kind": "via#workTypeGroup",
      "id": "18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeGroupList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get WorkTypeCollection By WorkTypeGroup

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypeGroups/{workTypeGroupId}/workTypes \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypeGroups/{workTypeGroupId}/workTypes',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workTypeGroups/{workTypeGroupId}/workTypes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workTypeGroups/{workTypeGroupId}/workTypes

Retrieve a list of all work types associated with work type group.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
workTypeGroupId path string true Alvaria-generated unique ID for a work type group
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkTypeList
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

EmailTemplates

Get EmailTemplatesCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/emailTemplates

Get EmailTemplatesCollection

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
templateType query string false Limits response to email templates of the specified template type

Enumerated Values

Parameter Value
templateType acknowledgement
templateType standardResponse
templateType outreachCampaign

Example responses

200 Response

{
  "kind": "via#emailTemplateFragmentCollection",
  "emailTemplates": [
    {
      "active": true,
      "kind": "via#emailTemplate",
      "id": 7,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "subject": "information",
      "templateType": "standardResponse"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK EmailTemplateFragmentCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Post EmailTemplate

Code samples

# You can also use wget
curl -X POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates',
{
  method: 'POST',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

POST /via/v2/organizations/{orgId}/provisioning/emailTemplates

Creates a new email template (standard response or acknowledgement or outreach campaign)

Body parameter

{
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
body body PostEmailTemplateRequest true none

Example responses

200 Response

{
  "kind": "via#emailTemplate",
  "id": "23",
  "active": true,
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Success - OK EmailTemplate
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get EmailTemplate

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId}

Retrieves details about an existing email template

Parameters

Name In Type Required Description
emailTemplateId path string true Alvaria generated unique identifier for the email template instance.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#emailTemplate",
  "id": "23",
  "active": true,
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Success - OK EmailTemplate
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Patch EmailTemplate

Code samples

# You can also use wget
curl -X PATCH https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId}',
{
  method: 'PATCH',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PATCH https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PATCH /via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId}

Updates an existing email template (standard response or acknowledgement or outreach campaign)

Body parameter

{
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
emailTemplateId path string true Alvaria generated unique identifier for the email template instance.
body body PatchEmailTemplatesRequest true none

Example responses

200 Response

{
  "kind": "via#emailTemplate",
  "id": "23",
  "active": true,
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Success - OK EmailTemplate
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Delete EmailTemplate

Code samples

# You can also use wget
curl -X DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

DELETE /via/v2/organizations/{orgId}/provisioning/emailTemplates/{emailTemplateId}

Deletes an existing email template (standard response or acknowledgement or outreach campaign)

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
emailTemplateId path string true Alvaria generated unique identifier for the email template instance.

Example responses

400 Response

{
  "code": "XXX",
  "message": "Error description",
  "errors": [
    {
      "scope": "error.scope",
      "reason": "error.reason",
      "message": "error.message"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Success - No Content None
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Signatures

Get SignatureCollection

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/signatures

Retrieves a collection of signatures that are available to attach to an email.

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#signatureFragmentCollection",
  "signatures": [
    {
      "active": true,
      "kind": "via#signature",
      "id": 1,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Success - OK SignatureFragmentCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Post EmailSignature

Code samples

# You can also use wget
curl -X POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures',
{
  method: 'POST',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

POST https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

POST /via/v2/organizations/{orgId}/provisioning/signatures

Creates a new email signature.

Body parameter

{
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
body body PostSignatureRequest true none

Example responses

200 Response

{
  "kind": "via#signature",
  "id": 7,
  "active": true,
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002
}

Responses

Status Meaning Description Schema
200 OK Success - OK Signature
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Get Signature

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/signatures/{signatureId}

Retrieves details about an existing email signature

Parameters

Name In Type Required Description
signatureId path string true Alvaria generated unique identifier for the signature instance.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#signature",
  "id": 7,
  "active": true,
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002
}

Responses

Status Meaning Description Schema
200 OK Success - OK Signature
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Patch Signature

Code samples

# You can also use wget
curl -X PATCH https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "version": 1002
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId}',
{
  method: 'PATCH',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PATCH https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PATCH /via/v2/organizations/{orgId}/provisioning/signatures/{signatureId}

Updates an existing email signature

Body parameter

{
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "version": 1002
}

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
signatureId path string true Alvaria generated unique identifier for the signature instance.
body body PatchSignaturesRequest true none

Example responses

200 Response

{
  "kind": "via#signature",
  "id": 7,
  "active": true,
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002
}

Responses

Status Meaning Description Schema
200 OK Success - OK Signature
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Delete Signature

Code samples

# You can also use wget
curl -X DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

DELETE https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/signatures/{signatureId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

DELETE /via/v2/organizations/{orgId}/provisioning/signatures/{signatureId}

Deletes an existing email signature

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
signatureId path string true Alvaria generated unique identifier for the signature instance.

Example responses

400 Response

{
  "code": "XXX",
  "message": "Error description",
  "errors": [
    {
      "scope": "error.scope",
      "reason": "error.reason",
      "message": "error.message"
    }
  ]
}

Responses

Status Meaning Description Schema
204 No Content Success - No Content None
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
409 Conflict Client Error - Conflict ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

WorkHandlerStatusReasons

Get WorkHandlerStatusReasons

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workHandlerStatusReasons \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workHandlerStatusReasons',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/workHandlerStatusReasons HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/workHandlerStatusReasons

Retrieves all the agent status reasons available in the specified org.

Parameters

Name In Type Required Description
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
startIndex query integer false Index of the starting record. This is used to set the beginning record for the result set when multiple GET Collection requests are required due to the pagination of a large result set.
maxResults query integer false Maximum results. This is used to specify the maximum number of records to return in the result set. You can use this to set a result set limit that is less than the system/API-specific limit.
category query string false Filters result set by category.

Enumerated Values

Parameter Value
category Park
category NotReady
category LoggedOut
category CallRejectedReason

Example responses

200 Response

{
  "kind": "via#workHandlerStatusReasonCollection",
  "workHandlerStatuses": [
    {
      "kind": "via#workHandlerStatus",
      "id": "114.114",
      "category": "Park",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Auto Consult"
        }
      ]
    },
    {
      "kind": "via#workHandlerStatus",
      "id": "192.192",
      "category": "NotReady",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "On Break"
        }
      ]
    }
  ],
  "totalItems": 2
}

Responses

Status Meaning Description Schema
200 OK Success - OK WorkHandlerStatusReasonCollection
400 Bad Request Client Error - Bad Request ErrorResponse
401 Unauthorized Client Error - Unauthorized None
404 Not Found Client Error - Not Found ErrorResponse
405 Method Not Allowed Client Error - Method Not Allowed ErrorResponse
429 Too Many Requests Client Error - Too Many Requests ErrorResponse
500 Internal Server Error Server Error - Internal Server Error ErrorResponse

Dispositions

Get Dispositions

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositions \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositions',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositions HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/dispositions

Retrieves a collection of all Dispositions defined in the system.

Parameters

Name In Type Required Description
includeInactive query boolean false If the 'includeInactive' query parameter is not passed OR set to 'false' only active object instances are returned. If 'includeInactive' query parameter is passed and set to 'true' both active and inactive object instances are returned in the API response.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
startIndex query integer false Index of the starting record. This is used to set the beginning record for the result set when multiple GET Collection requests are required due to the pagination of a large result set.
maxResults query integer false Maximum results. This is used to specify the maximum number of records to return in the result set. You can use this to set a result set limit that is less than the system/API-specific limit.
orgId path string true Name of a customer organization.
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#dispositionCollection",
  "dispositions": [
    {
      "kind": "via#disposition",
      "id": "8.8",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Fax Machine"
        }
      ],
      "dispositionCode": "DFM",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": {
        "reporting": [
          "abandon",
          "contact",
          "followUp"
        ],
        "callOutcome": [
          "success",
          "callback",
          "refusal",
          "exclusion"
        ],
        "routing": [
          "none",
          "sendDigits",
          "default",
          "hangUp",
          "playMessage",
          "redial",
          "transfer",
          "rerouteToSelfService",
          "dialNextNumber"
        ]
      }
    },
    {
      "kind": "via#disposition",
      "id": "2.2",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Dialer Dropped Cust After Hold"
        }
      ],
      "dispositionCode": "DAD",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "13.13",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Connect After Hold"
        }
      ],
      "dispositionCode": "DPN",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "55.55",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Business Detected"
        }
      ],
      "dispositionCode": "SW_DBS",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "112.112",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "My Custom Disposition"
        }
      ],
      "dispositionCode": "MCD",
      "dispositionType": "userDefined",
      "active": true
    }
  ],
  "totalItems": 5
}

Responses

Status Meaning Description Schema
200 OK Successful response DispositionCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get Disposition

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositions/{dispositionId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositions/{dispositionId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/dispositions/{dispositionId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/dispositions/{dispositionId}

Gets a specific Disposition instance by its identifier. The dispositionId can be obtained from a call to the GET /dispositions or GET workTypes/{workTypeId}/dispositions endpoints.

Parameters

Name In Type Required Description
dispositionId path string true The ID of the disposition. The ID must contain only letters (a-z, A-z), numbers (0-9), or underscores (_). The maximum length is 64 characters.
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#disposition",
  "id": "Id",
  "sourceKey": "123",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "dispositionOne"
    }
  ],
  "description": "This is an entity",
  "creationTime": "2018-01-02T17:21:09.512",
  "lastModifiedTime": "2018-01-02T17:21:09.512",
  "version": 2,
  "active": true,
  "dispositionCode": "ABC",
  "dispositionType": "systemDefined",
  "contactClass": "undefined",
  "channels": [
    {
      "channelType": "chat"
    },
    {
      "channelType": "email"
    },
    {
      "channelType": "sms"
    },
    {
      "channelType": "voice"
    }
  ],
  "attributes": [
    {
      "reporting": [
        "abandon",
        "contact",
        "followUp"
      ]
    },
    {
      "callOutcome": [
        "success",
        "callback",
        "refusal",
        "exclusion"
      ]
    },
    {
      "routing": [
        "none",
        "sendDigits",
        "default",
        "hangUp",
        "playMessage",
        "redial",
        "transfer",
        "rerouteToSelfService",
        "dialNextNumber"
      ]
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful response Disposition
401 Unauthorized Unauthorized None
404 Not Found No Disposition exists for the provided entity ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

ContactDataDefs

Get Contact Data Definitions

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefs \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefs',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefs HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/contactDataDefs

Retrieves a collection of all Contact Data Definitions defined in the system.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
orgId path string true Name of a customer organization.
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
channelType query string false ContactDataDef channel. This is used to filter results by channel type.
friendlyName query string false Name of a specific contact data definition to fetch

Enumerated Values

Parameter Value
channelType voice
channelType email
channelType chat
channelType sms

Example responses

200 Response

{
  "kind": "via#contactDataDefCollection",
  "contactDataDefs": [
    {
      "kind": "via#contactDataDef",
      "id": "77",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Outreach-Default-CDD"
        }
      ],
      "channel": {
        "channelType": "voice"
      }
    },
    {
      "kind": "via#contactDataDef",
      "id": "78",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "NB_Unique"
        }
      ],
      "channel": {
        "channelType": "voice"
      }
    }
  ],
  "totalItems": 2
}

Responses

Status Meaning Description Schema
200 OK Successful response ContactDataDefCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get Contact Data Definition

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefs/{contactDataDefId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefs/{contactDataDefId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefs/{contactDataDefId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/contactDataDefs/{contactDataDefId}

Gets a specific Contact Data Definition instance by its identifier. The contactDataDefId can be obtained from a call to the GET /contactDataDefs endpoint.

Parameters

Name In Type Required Description
contactDataDefId path string true The ID of the contact data definition
orgId path string true Name of a customer organization.
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.

Example responses

200 Response

{
  "kind": "via#contactDataDef",
  "id": "77",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "Outreach-CDD-Default"
    }
  ],
  "channel": {
    "channelType": "voice"
  },
  "description": "Outreach-Default-CDD",
  "version": 2,
  "contactDataDefDetail": [
    {
      "kind": "via#contactDataDefDetailCollection",
      "details": [
        {
          "kind": "via#contactDataDefDetails",
          "contactDataDefReservedWordId": "40",
          "readOnly": true,
          "fieldOrder": 2,
          "label": "First Name",
          "maskType": "maskEntireValue",
          "maskSize": 5
        }
      ],
      "totalItems": 1
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful response ContactDataDef
401 Unauthorized Unauthorized None
404 Not Found No Contact Data Definition exists for the provided entity ID Error
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

ContactDataDefReservedWords

Get Contact Data Definition Reserved Words

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords

Retrieves a collection of all Contact Data Definition Reserved Words defined in the system.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
orgId path string true Name of a customer organization.
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
friendlyName query string false Name of a specific reserved word to fetch
channelType query string false ContactDataDef channel. This is used to filter results by channel type.

Enumerated Values

Parameter Value
channelType voice
channelType email
channelType chat
channelType sms

Example responses

200 Response

{
  "kind": "via#contactDataDefReservedWordCollection",
  "contactDataDefReservedWords": [
    {
      "kind": "via#contactDataDefReservedWord",
      "id": "113",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "ACCOUNT_SMS"
        }
      ],
      "channel": {
        "channelType": "sms"
      }
    },
    {
      "kind": "via#contactDataDefReservedWord",
      "id": "114",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "DNIS"
        }
      ],
      "channel": {
        "channelType": "voice"
      }
    }
  ],
  "totalItems": 2
}

Responses

Status Meaning Description Schema
200 OK Successful response ContactDataDefReservedWordCollection
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get Contact Data Definition Reserved Word

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords/{contactDataDefReservedWordId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords/{contactDataDefReservedWordId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords/{contactDataDefReservedWordId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/contactDataDefReservedWords/{contactDataDefReservedWordId}

Retrieves a single Contact Data Definition Reserved Word given its unique id

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
orgId path string true Name of a customer organization.
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
contactDataDefReservedWordId path string true The ID of the contact data definition reserved word

Example responses

200 Response

{
  "kind": "via#contactDataDefReservedWord",
  "id": "114",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MobilePhone"
    }
  ],
  "channel": {
    "channelType": "voice"
  }
}

Responses

Status Meaning Description Schema
200 OK Successful response ContactDataDefReservedWordFragment
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Skills

Get Skills

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/skills \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/skills',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/skills HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/skills

Retrieves a collection of all Skills defined in the system.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.

Example responses

200 Response

{
  "kind": "via#skillList",
  "skills": [
    {
      "active": true,
      "kind": "via#skill",
      "id": "18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response SkillList
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get Skill

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/skills/{skillId} \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/skills/{skillId}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/skills/{skillId} HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/skills/{skillId}

Gets a specific Skill instance by its identifier. The skillId can be obtained from a call to the GET /skills endpoints.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.
skillId path string true Alvaria-generated unique ID for a skill

Example responses

200 Response

{
  "kind": "via#skillDetails",
  "active": true,
  "id": "18",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "skillLevels": [
    {
      "kind": "via#skillLevel",
      "id": "35",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "levelPriority": "lowest"
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Successful response SkillDetails
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Get User Skills

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/skills \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');

const headers = {
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/skills',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/skills HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/provisioning/users/{userId}/skills

Retrieves a list of skills that the user is assigned to.

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.
userId path string true Alvaria-generated unique ID for a User

Example responses

200 Response

{
  "kind": "via#userSkillList",
  "version": 1002,
  "userSkills": [
    {
      "active": true,
      "kind": "via#userSkill",
      "id": "18",
      "levelId": "35"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response UserSkillList
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Put User Skills

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/skills \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: string' \
  -H 'x-api-key: string'

const fetch = require('node-fetch');
const inputBody = {
  "version": 1002,
  "userSkills": [
    {
      "id": "18",
      "levelId": "35"
    }
  ]
};
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'Authorization':'string',
  'x-api-key':'string'
};

fetch('https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/skills',
{
  method: 'PUT',
  body: JSON.stringify(inputBody),
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/provisioning/users/{userId}/skills HTTP/1.1
Host: orgid.via.aspect-cloud.net
Content-Type: application/json
Accept: application/json
Authorization: string
x-api-key: string

PUT /via/v2/organizations/{orgId}/provisioning/users/{userId}/skills

Removes all existing associations to user skills for the user specified by userId and adds associations for the user skills specified in the body of the request.

Body parameter

{
  "version": 1002,
  "userSkills": [
    {
      "id": "18",
      "levelId": "35"
    }
  ]
}

Parameters

Name In Type Required Description
Authorization header string true Authentication token with the value: 'Bearer {accessToken}', where {accessToken} was returned from a call to the authorization endpoint
x-api-key header string true Alvaria-provided value used to track API endpoint usage.
orgId path string true Name of a customer organization.
userId path string true Alvaria-generated unique ID for a User
body body PutUserSkillsRequest true none

Example responses

200 Response

{
  "kind": "via#userSkillList",
  "version": 1002,
  "userSkills": [
    {
      "active": true,
      "kind": "via#userSkill",
      "id": "18",
      "levelId": "35"
    }
  ],
  "totalItems": 1
}

Responses

Status Meaning Description Schema
200 OK Successful response UserSkillList
400 Bad Request Bad Request Error
401 Unauthorized Unauthorized None
405 Method Not Allowed Method Not Allowed Error
429 Too Many Requests Throttled Error
500 Internal Server Error Internal server error Error

Schemas

User

{
  "kind": "via#user",
  "id": "Id",
  "user": "user1@orgname.com",
  "userReference": {
    "organizationId": "exampleOrgId",
    "userId": "134302066600001"
  },
  "firstName": "userFName",
  "lastName": "userLName",
  "preferredName": {
    "locale": "en-US",
    "value": "alvaria user"
  },
  "description": "This is an entity",
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "active": true,
  "memberOf": {
    "teamReference": {
      "organizationId": "exampleOrgId",
      "teamId": "team1"
    },
    "name": [
      {
        "locale": "en-US",
        "value": "sales"
      }
    ]
  }
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
user string true none The user's email address
userReference UserReference true none A unique reference to this Team.
firstName string true none none
lastName string true none none
preferredName [UsersFriendlyName] true none Preferred name, which is the user's first and last name from the user's My Account profile.
description string false none User Friendly description of the entity type.
creationTime CreationTime true none The date and time that the entity instance was created specified in ISO 8601 format (1985-04-12T23:20:50.525Z)
lastModifiedTime LastModifiedTime true none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
active Active true none Whether the entity is available for use.
memberOf MemberRef false none Provides a team member reference to a given User.

UserReference

{
  "organizationId": "exampleOrgId",
  "userId": "134302066600001"
}

A unique reference to this Team.

Properties

Name Type Required Restrictions Description
organizationId string true none Alvaria-generated unique identifier for the Organization
userId string true none Alvaria-generated unique identifier for the User

MemberRef

{
  "teamReference": {
    "organizationId": "exampleOrgId",
    "teamId": "team1"
  },
  "name": [
    {
      "locale": "en-US",
      "value": "sales"
    }
  ]
}

Provides a team member reference to a given User.

Properties

Name Type Required Restrictions Description
teamReference TeamReference true none A unique reference to this team.
name [TeamFriendlyName] true none none

ManagerRef

{
  "teamId": "string"
}

Provides a team manager reference to a given User.

Properties

Name Type Required Restrictions Description
teamId string true none none

UsersCollection

{
  "kind": "via#userList",
  "users": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      }
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 5
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
users [UsersFragment] false none none
lastIndexReturned integer false none This is a deprecated property.
totalItems integer false none The total number of Entity instances existing in the system.

UsersFragment

{
  "active": true,
  "kind": "via#user",
  "id": "2049f439be17920",
  "user": "user1@orgname.com",
  "firstName": "alvaria",
  "lastName": "user",
  "preferredName": {
    "locale": "en-US",
    "value": "alvaria user"
  }
}

UsersFragment

Properties

Name Type Required Restrictions Description
active Active true none Whether the entity is available for use.
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
user string true none Email address of the User entity.
firstName string true none First name of the User entity.
lastName string true none Last name of the User entity.
preferredName [UsersFriendlyName] true none Preferred name, which is the user's first and last name from the user's My Account profile.

UsersStateFragment

{
  "active": true,
  "kind": "via#user",
  "id": "2049f439be17920",
  "user": "user1@orgname.com",
  "firstName": "alvaria",
  "lastName": "user",
  "preferredName": {
    "locale": "en-US",
    "value": "alvaria user"
  },
  "state": "deprecated"
}

UsersStateFragment

Properties

allOf

Name Type Required Restrictions Description
anonymous UsersFragment false none none

and

Name Type Required Restrictions Description
anonymous object false none none
» state string true none This is a deprecated property.

UsersFriendlyName

{
  "locale": "en-US",
  "value": "andrea anderson"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

AllUsersState

{
  "kind": "via#teamState",
  "users": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      },
      "state": "deprecated"
    },
    {
      "active": true,
      "kind": "via#user",
      "id": "user2",
      "user": "user2@orgname.com",
      "firstName": "alvaria",
      "lastName": "User2",
      "preferredName": {
        "locale": "en-US",
        "value": "User2"
      },
      "state": "deprecated"
    }
  ],
  "teamOwners": [
    {
      "active": true,
      "kind": "via#user",
      "id": "owner1",
      "user": "owner1@orgname.com",
      "firstName": "John",
      "lastName": "Doe",
      "preferredName": {
        "locale": "en-US",
        "value": "John Doe"
      },
      "state": "deprecated"
    }
  ],
  "lastIndexReturned": 1,
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string true none Collection of teamMembers and teamOwners.
users [UsersStateFragment] true none none
teamOwners [UsersStateFragment] true none none
lastIndexReturned integer true none This is a deprecated property.
totalItems integer true none Total number of User instances existing in the system.

TeamMembersState

{
  "kind": "via#teamState",
  "teamMembers": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      },
      "state": "deprecated"
    }
  ],
  "lastIndexReturned": 1,
  "totalItems": 1
}

Collection of teamMembers.

Properties

Name Type Required Restrictions Description
kind string true none none
teamMembers [UsersStateFragment] true none none
lastIndexReturned integer true none This is a deprecated property.
totalItems integer true none Total number of User instances existing in the system.

TeamOwnersState

{
  "kind": "via#teamState",
  "teamOwners": [
    {
      "active": true,
      "kind": "via#user",
      "id": "192e14fab017122",
      "user": "user1@orgname.com",
      "firstName": "alvaria",
      "lastName": "user",
      "preferredName": {
        "locale": "en-US",
        "value": "alvaria user"
      },
      "state": "deprecated"
    }
  ],
  "lastIndexReturned": 1,
  "totalItems": 1
}

Collection of teamOwners.

Properties

Name Type Required Restrictions Description
kind string true none none
teamOwners [UsersStateFragment] true none none
lastIndexReturned integer true none This is a deprecated property.
totalItems integer true none Total number of User instances existing in the system.

TeamCollection

{
  "kind": "via#teamList",
  "teams": [
    {
      "active": true,
      "kind": "via#team",
      "id": "team1",
      "teamReference": {
        "organizationId": "org1",
        "teamId": "team1"
      },
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "alphaTeam"
        }
      ]
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 5
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
teams [TeamFragment] true none none
lastIndexReturned integer true none This is a deprecated property.
totalItems integer true none The total number of Entity instances existing in the system.

TeamFragment

{
  "kind": "via#team",
  "active": true,
  "id": "sales",
  "teamReference": {
    "organizationId": "exampleOrgId",
    "teamId": "team1"
  },
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "channelOne"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
active Active true none Whether the entity is available for use.
id string true none Alvaria-generated unique identifier for the Entity
teamReference TeamReference true none A unique reference to this team.
friendlyName [TeamFriendlyName] true none Unique descriptive name for this Team instance

TeamFriendlyName

{
  "locale": "en-US",
  "value": "sales"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

TeamReference

{
  "organizationId": "exampleOrgId",
  "teamId": "team1"
}

teamReference

Properties

Name Type Required Restrictions Description
organizationId string true none Alvaria-generated unique identifier for the Organization
teamId string true none Alvaria-generated unique identifier for the Team.

SystemExternal

{
  "kind": "via#systemExternal",
  "active": true,
  "creationTime": "2017-11-30T13:01:58.247Z",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "id": "0cd42b5e-e3ea-45fc-b643-bf0b17539bed",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
active Active true none Whether the entity is available for use.
creationTime CreationTime true none The date and time that the entity instance was created specified in ISO 8601 format (1985-04-12T23:20:50.525Z)
lastModifiedTime LastModifiedTime true none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
id string true none Alvaria-generated unique identifier for the Entity
friendlyName [SystemExternalFriendlyName] true none Unique descriptive name for this System External Dial instance.
systemExternal string true none String representation of System external dial.

SystemExternalFragment

{
  "active": true,
  "kind": "via#systemExternal",
  "id": "a27c0a37-81f4-4faf-b2ca-9fd08d1e0293",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Properties

Name Type Required Restrictions Description
active Active true none Whether the entity is available for use.
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
friendlyName [SystemExternalFriendlyName] true none Unique descriptive name for this System External Dial instance.
systemExternal string true none String representation of System external dial.

SystemExternalPost

{
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
friendlyName [SystemExternalFriendlyName] true none Unique descriptive name for this System External Dial instance.
systemExternal string true none String representation of System external dial.

SystemExternalPut

{
  "kind": "via#systemExternal",
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890",
  "version": 1002
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
active Active false none Whether the entity is available for use.
friendlyName [SystemExternalFriendlyName] true none Unique descriptive name for this System External Dial instance.
systemExternal string true none String representation of System external dial.
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency

SystemExternalPatch

{
  "version": 1002,
  "active": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "externalNumber"
    }
  ],
  "systemExternal": "1234567890"
}

Properties

Name Type Required Restrictions Description
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
active Active false none Whether the entity is available for use.
friendlyName [SystemExternalFriendlyName] false none Unique descriptive name for this System External Dial instance.
systemExternal string false none String representation of System external dial.

SystemExternalCollection

{
  "kind": "via#systemExternalCollection",
  "systemExternals": [
    {
      "active": true,
      "kind": "via#systemExternal",
      "id": "external1",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "externalNumber"
        }
      ],
      "systemExternal": "1234567890"
    }
  ],
  "lastIndexReturned": 5,
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
systemExternals [SystemExternalFragment] true none none
lastIndexReturned integer true none This is a deprecated property.
totalItems integer true none The total number of Entity instances existing in the system.

SystemExternalFriendlyName

{
  "locale": "en-US",
  "value": "AutoTest1"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

Error

{
  "error": {
    "code": "XXX",
    "message": "Error description",
    "errors": [
      {
        "scope": "error.scope",
        "reason": "error.reason",
        "message": "error.message"
      }
    ]
  }
}

Properties

Name Type Required Restrictions Description
error ErrorResponse true none none

ErrorResponse

{
  "code": "XXX",
  "message": "Error description",
  "errors": [
    {
      "scope": "error.scope",
      "reason": "error.reason",
      "message": "error.message"
    }
  ]
}

Properties

Name Type Required Restrictions Description
code integer true none HTTP error status.
message string true none none
errors [ErrorResponseItem] true none none

ErrorResponseItem

{
  "scope": "error.scope",
  "reason": "error.reason",
  "message": "error.message"
}

Properties

Name Type Required Restrictions Description
scope string true none none
reason string true none none
message string true none none

DispositionRuleFragment

{
  "kind": "via#rule",
  "id": "Id",
  "dispositionCode": "ABC",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "dispositionOne"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
dispositionCode string true none The identifier used by the source system to represent entity code.
friendlyName [DispositionFriendlyName] false none Unique descriptive name for this Disposition instance

DispositionRuleCollection

{
  "kind": "via#ruleCollection",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "Rules"
    }
  ],
  "rules": [
    {
      "kind": "via#rule",
      "id": "Id",
      "dispositionCode": "ABC",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "dispositionOne"
        }
      ]
    }
  ],
  "totalItems": 5
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
friendlyName [DispositionRuleFriendlyName] true none Unique descriptive name for this Rule Collection
rules [DispositionRuleFragment] true none none
totalItems integer true none The total number of Entity instances existing in the system.

DispositionRuleFriendlyName

{
  "locale": "en-US",
  "value": "entity name"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

DispositionRule

{
  "kind": "via#rule",
  "dispositionId": "Id",
  "dispPlanId": "Id",
  "dispositionCode": "ABC",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "dispositionOne"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
dispositionId string true none Alvaria-generated unique identifier for the Entity
dispPlanId string true none Alvaria-generated unique identifier for the Entity
dispositionCode string false none The identifier used by the source system to represent entity code.
friendlyName [DispositionFriendlyName] false none Unique descriptive name for this Disposition instance

DispositionRulePost

{
  "kind": "via#rule"
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.

DispositionRulePut

{
  "kind": "via#rule",
  "rules": [
    "Id"
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
rules [string] true none Detail Dispositions associated to a given Disposition Rules

Disposition

{
  "kind": "via#disposition",
  "id": "Id",
  "sourceKey": "123",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "dispositionOne"
    }
  ],
  "description": "This is an entity",
  "creationTime": "2018-01-02T17:21:09.512",
  "lastModifiedTime": "2018-01-02T17:21:09.512",
  "version": 2,
  "active": true,
  "dispositionCode": "ABC",
  "dispositionType": "systemDefined",
  "contactClass": "undefined",
  "channels": [
    {
      "channelType": "chat"
    },
    {
      "channelType": "email"
    },
    {
      "channelType": "sms"
    },
    {
      "channelType": "voice"
    }
  ],
  "attributes": [
    {
      "reporting": [
        "abandon",
        "contact",
        "followUp"
      ]
    },
    {
      "callOutcome": [
        "success",
        "callback",
        "refusal",
        "exclusion"
      ]
    },
    {
      "routing": [
        "none",
        "sendDigits",
        "default",
        "hangUp",
        "playMessage",
        "redial",
        "transfer",
        "rerouteToSelfService",
        "dialNextNumber"
      ]
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
sourceKey string true none The identifier used by the source system to represent this entity instance.
friendlyName [FriendlyName] true none Unique descriptive name for this Disposition instance
description string false none User Friendly description of the entity type.
creationTime string(date-time) true none Time the entity instance was created, specified in ISO 8601 format (1985-04-12T23:20:50.525).
lastModifiedTime string(date-time) true none Time of the most recent change to the Entity instance, specified in ISO 8601 format (1985-04-12T23:20:50.525).
version integer(int32) true none Version of the data associated with this instance. This is a number that starts with the value 1 and increments by one for each update made to an entity instance.
active boolean true none State of the entity. True indicates that entity is active in Alvaria™ Cloud.
dispositionCode string true none The identifier used by the source system to represent entity code.
dispositionType string true none The identifier used by the source system to represent entity type.
contactClass string false none The type of voice contact that was delivered to the agent.
channels [ChannelTypeCollection] false none Channel representation
attributes Attributes false none none

Enumerated Values

Property Value
dispositionType userDefined
dispositionType systemDefined
contactClass undefined
contactClass livePerson
contactClass recordedVoice
contactClass nonVoice

DispositionCollection

{
  "kind": "via#dispositionCollection",
  "dispositions": [
    {
      "kind": "via#disposition",
      "id": "8.8",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Fax Machine"
        }
      ],
      "dispositionCode": "DFM",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": {
        "reporting": [
          "abandon",
          "contact",
          "followUp"
        ],
        "callOutcome": [
          "success",
          "callback",
          "refusal",
          "exclusion"
        ],
        "routing": [
          "none",
          "sendDigits",
          "default",
          "hangUp",
          "playMessage",
          "redial",
          "transfer",
          "rerouteToSelfService",
          "dialNextNumber"
        ]
      }
    },
    {
      "kind": "via#disposition",
      "id": "2.2",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Dialer Dropped Cust After Hold"
        }
      ],
      "dispositionCode": "DAD",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "13.13",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Connect After Hold"
        }
      ],
      "dispositionCode": "DPN",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "55.55",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Business Detected"
        }
      ],
      "dispositionCode": "SW_DBS",
      "dispositionType": "systemDefined",
      "active": true,
      "attributes": [
        {
          "reporting": [
            "abandon",
            "contact",
            "followUp"
          ]
        },
        {
          "callOutcome": [
            "success",
            "callback",
            "refusal",
            "exclusion"
          ]
        },
        {
          "routing": [
            "none",
            "sendDigits",
            "default",
            "hangUp",
            "playMessage",
            "redial",
            "transfer",
            "rerouteToSelfService",
            "dialNextNumber"
          ]
        }
      ]
    },
    {
      "kind": "via#disposition",
      "id": "112.112",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "My Custom Disposition"
        }
      ],
      "dispositionCode": "MCD",
      "dispositionType": "userDefined",
      "active": true
    }
  ],
  "totalItems": 5
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
dispositions [DispositionFragment] true none none
totalItems integer true none The total number of Entity instances existing in the system.

DispositionFragment

{
  "kind": "via#disposition",
  "id": "exampleDispositionId",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "dispositionCode": "ABC",
  "dispositionType": "systemDefined",
  "active": true,
  "attributes": [
    {
      "reporting": [
        "abandon",
        "contact",
        "followUp"
      ]
    },
    {
      "callOutcome": [
        "success",
        "callback",
        "refusal",
        "exclusion"
      ]
    },
    {
      "routing": [
        "none",
        "sendDigits",
        "default",
        "hangUp",
        "playMessage",
        "redial",
        "transfer",
        "rerouteToSelfService",
        "dialNextNumber"
      ]
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Disposition
friendlyName FriendlyNameCollection true none Displayable representation of the entity name. One entry per supported locale.
dispositionCode string true none The short identifier associated with this disposition
dispositionType string false none Indicates system defined or user defined disposition
active Active true none Whether the entity is available for use.
attributes Attributes false none none

Enumerated Values

Property Value
dispositionType systemDefined
dispositionType userDefined

DispositionFriendlyName

{
  "locale": "en-US",
  "value": "entity name"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

Channel

{
  "channelType": "string"
}

Channel representation

Properties

Name Type Required Restrictions Description
channelType string true none none

Attributes

[
  {
    "reporting": [
      "abandon",
      "contact",
      "followUp"
    ]
  },
  {
    "callOutcome": [
      "success",
      "callback",
      "refusal",
      "exclusion"
    ]
  },
  {
    "routing": [
      "none",
      "sendDigits",
      "default",
      "hangUp",
      "playMessage",
      "redial",
      "transfer",
      "rerouteToSelfService",
      "dialNextNumber"
    ]
  }
]

Properties

Name Type Required Restrictions Description
reporting [string] true none none
callOutcome [string] true none none
routing [string] true none none

DispositionRoutingPlan

{
  "kind": "via#dispositionRoutingPlan",
  "id": "Id",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "dispositionOne"
    }
  ],
  "description": "This is an entity",
  "creationTime": "2018-01-02T17:21:09.512",
  "lastModifiedTime": "2018-01-02T17:21:09.512",
  "version": 2,
  "active": true,
  "channels": [
    {
      "channelType": "chat"
    },
    {
      "channelType": "email"
    },
    {
      "channelType": "sms"
    },
    {
      "channelType": "voice"
    }
  ],
  "rules": [
    {
      "dispositionId": "1"
    },
    {
      "dispositionId": "2"
    },
    {
      "dispositionId": "3"
    },
    {
      "dispositionId": "4"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
friendlyName [DispositionRoutingPlanFriendlyName] true none Unique descriptive name for this Disposition Routing Plan instance
description string false none User Friendly description of the entity type.
creationTime string(date-time) true none Time the entity instance was created, specified in ISO 8601 format (1985-04-12T23:20:50.525).
lastModifiedTime string(date-time) true none Time of the most recent change to the Entity instance, specified in ISO 8601 format (1985-04-12T23:20:50.525).
version integer(int32) true none Version of the data associated with this instance. This is a number that starts with the value 1 and increments by one for each update made to an entity instance.
active boolean true none State of the entity. True indicates that entity is active in Alvaria™ Cloud.
channels [Channel] false none Channels representation
rules [Rule] false none disposition representation

DispositionRoutingPlanFragment

{
  "kind": "via#dispositionRoutingPlan",
  "id": "7",
  "channels": [
    {
      "channelType": "voice"
    },
    {
      "channelType": "email"
    }
  ],
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "active": true
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the DispositionRoutingPlanFragment id.
channels ChannelTypeCollection false none none
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
active Active false none Whether the entity is available for use.

DispositionRoutingPlanCollection

{
  "kind": "via#dispositionRoutingPlanList",
  "dispositionRoutingPlans": [
    {
      "kind": "via#dispositionRoutingPlan",
      "id": "7",
      "channels": [
        {
          "channelType": "voice"
        },
        {
          "channelType": "email"
        }
      ],
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "active": true
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
dispositionRoutingPlans [DispositionRoutingPlanFragment] false none none
totalItems integer false none The total number of configured disposition routing plans.

DispositionRoutingPlanFriendlyName

{
  "locale": "en-US",
  "value": "entity name"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

DispositionRoutingPlanPost

{
  "kind": "via#dispositionRoutingPlan",
  "id": "Id",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "dispositionOne"
    }
  ],
  "rules": [
    {
      "dispositionId": "1"
    },
    {
      "dispositionId": "2"
    },
    {
      "dispositionId": "3"
    },
    {
      "dispositionId": "4"
    }
  ],
  "description": "This is an entity",
  "active": true,
  "channels": [
    {
      "channelType": "chat"
    },
    {
      "channelType": "email"
    },
    {
      "channelType": "sms"
    },
    {
      "channelType": "voice"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string true none Alvaria-generated unique identifier for the Entity
friendlyName [DispositionRoutingPlanFriendlyName] true none Unique descriptive name for this Disposition Routing Plan instance
rules [Rule] false none disposition representation
description string false none User Friendly description of the entity type.
active boolean false none State of the entity. True indicates that entity is active in Alvaria™ Cloud.
channels [Channel] false none Channels representation

DispositionRoutingPlanChannel

{
  "dispPlanId": "Id",
  "channelTypeId": "Id"
}

Properties

Name Type Required Restrictions Description
dispPlanId string true none Alvaria-generated unique identifier for the Entity
channelTypeId string true none Alvaria-generated unique identifier for the Entity

Rule

{
  "dispositionId": "string"
}

Disposition representation

Properties

Name Type Required Restrictions Description
dispositionId string true none none

DispositionRoutingPlanRule

{
  "dispPlanId": "Id",
  "dispositionId": "Id"
}

Properties

Name Type Required Restrictions Description
dispPlanId string true none Alvaria-generated unique identifier for the Entity
dispositionId string true none Alvaria-generated unique identifier for the Entity

Version

1002

Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency

Properties

Name Type Required Restrictions Description
anonymous integer false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency

LastModifiedTime

"2017-11-30T13:01:58.247Z"

Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)

Properties

Name Type Required Restrictions Description
anonymous string(date-time) false none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)

CreationTime

"2017-11-30T13:01:58.247Z"

The date and time that the entity instance was created specified in ISO 8601 format (1985-04-12T23:20:50.525Z)

Properties

Name Type Required Restrictions Description
anonymous string(date-time) false none The date and time that the entity instance was created specified in ISO 8601 format (1985-04-12T23:20:50.525Z)

CallBackWorkTypeTerse

{
  "active": true,
  "kind": "via#callBackWorkType",
  "id": 82,
  "maxCallBackDays": 30,
  "canCallBackWorkType": true,
  "canCallBackSelf": true,
  "mustDisplayPastCallBackWarning": true,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "state": "inactive"
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Entity
maxCallBackDays integer false none The maximum number of days into the future that a callback may be scheduled.
canCallBackWorkType boolean false none Whether a callback can be directed to this work type.
canCallBackSelf boolean false none Whether a callback can be directed to the user who schedules it.
mustDisplayPastCallBackWarning boolean false none Whether a warning should be displayed to users attempting to schedule a callback for a date and time in the past.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
state WorkTypeState false none current state of the work type

WorkTypeTerse

{
  "active": true,
  "kind": "via#workType",
  "id": "5H9GYF.18",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "state": "inactive"
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Entity.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
state WorkTypeState false none current state of the work type

WorkTypeGroupTerse

{
  "active": true,
  "kind": "via#workTypeGroup",
  "id": "18",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Entity.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

WorkTypeList

{
  "kind": "via#workTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#workType",
      "id": "5H9GYF.18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "state": "inactive"
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
workTypes [WorkTypeTerse] false none none
totalItems integer false none indicates the total number of records in the result set. The client can use this value to determine how many calls will be required to navigate through the entire result set.

WorkTypeGroupList

{
  "kind": "via#workTypeGroupList",
  "workTypeGroups": [
    {
      "active": true,
      "kind": "via#workTypeGroup",
      "id": "18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
workTypeGroups [WorkTypeGroupTerse] false none none
totalItems integer false none indicates the total number of records in the result set. The client can use this value to determine how many calls will be required to navigate through the entire result set.

WorkHandlerCollection

{
  "kind": "via#workHandlerCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "workHandlers": [
    {
      "id": "cb221217800211"
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the resultsqq§
lastModifiedTime LastModifiedTime false none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
workHandlers [WorkHandlerV2] false none Ordered array of agent identifiers. The location of the agent identifier in the list is used by Alvaria™ Cloud to determine which agent should be selected to process a contact. Starting at the first agent identifier in the list, Alvaria™ Cloud determines the first agent that is available and assigns that agent to the contact.
totalItems integer false none indicates the total number of records in the result set. The client can use this value to determine how many calls will be required to navigate through the entire result set.

PostWorkHandlersRequest

{
  "version": 1002,
  "workHandlers": [
    {
      "id": "cb221217800211"
    }
  ]
}

Properties

Name Type Required Restrictions Description
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
workHandlers [WorkHandlerV2] true none Ordered array of agent identifiers. The location of the work handler identifier in the list is used by Alvaria™ Cloud to determine which agent should be selected to process a contact. Starting at the first agent identifier in the list, Alvaria™ Cloud determines the first agent that is available and assigns that agent to the contact.

PutHiddenWorkTypesRequest

{
  "workTypes": [
    {
      "id": "5H9GYF.127"
    }
  ]
}

Properties

Name Type Required Restrictions Description
workTypes [HiddenWorkType] true none Array of work type identifiers.

FriendlyNameCollection

[
  {
    "locale": "en-US",
    "value": "entity name"
  }
]

Displayable representation of the entity name. One entry per supported locale.

Properties

Name Type Required Restrictions Description
anonymous [FriendlyName] false none Displayable representation of the entity name. One entry per supported locale.

CallBackWorkTypeList

{
  "kind": "via#callBackWorkTypeList",
  "workTypes": [
    {
      "active": true,
      "kind": "via#callBackWorkType",
      "id": 82,
      "friendlyName": {
        "locale": "en-US",
        "value": "entity name"
      },
      "maxCallBackDays": 30,
      "canCallBackWorkType": true,
      "canCallBackSelf": true,
      "mustDisplayPastCallBackWarning": true,
      "state": "inactive"
    }
  ],
  "totalItems": 5
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
workTypes [CallBackWorkTypeTerse] false none none
totalItems integer false none The total number of Entity instances existing in the system.

DispositionRoutingPlanRulesCollection

{
  "kind": "via#dispositionRoutingPlanRulesList",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "rules": [
    {
      "kind": "via#dispositionRoutingPlanRules",
      "id": "40",
      "dispositionCode": "CC_EXP",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
rules [DispositionRoutingPlanRules] false none Detail records associated to a given Disposition Routing Plan
totalItems integer false none The total number of disposition rules returned in the collection

Active

true

Whether the entity is available for use.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the entity is available for use.

HiddenWorkType

{
  "id": "5H9GYF.127"
}

Properties

Name Type Required Restrictions Description
id string true none Alvaria-generated unique identifier for the WorkType id.

WorkHandlerV2

{
  "id": "cb221217800211"
}

Properties

Name Type Required Restrictions Description
id string true none Alvaria-generated unique identifier for the agent id.

TemplateType

"standardResponse"

An enum value indicating whether the email is an acknowledgement or standard response or outreach campaign

Properties

Name Type Required Restrictions Description
anonymous string false none An enum value indicating whether the email is an acknowledgement or standard response or outreach campaign

Enumerated Values

Property Value
anonymous acknowledgement
anonymous standardResponse
anonymous outreachCampaign

EmailTemplateSubject

"information"

An introductory line that identifies the email's intent

Properties

Name Type Required Restrictions Description
anonymous string false none An introductory line that identifies the email's intent

EmailTemplateBody

"Here is the information you requested."

The main part of the email containing the message's text, images, and other data.

Properties

Name Type Required Restrictions Description
anonymous string false none The main part of the email containing the message's text, images, and other data.

SignatureId

"1"

Alvaria-generated unique identifier for the signature entity.

Properties

Name Type Required Restrictions Description
anonymous string false none Alvaria-generated unique identifier for the signature entity.

SignatureContents

"alvaria"

The body of the signature containing the signature's text, images, and other data.

Properties

Name Type Required Restrictions Description
anonymous string false none The body of the signature containing the signature's text, images, and other data.

PatchEmailTemplatesRequest

{
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
subject EmailTemplateSubject false none An introductory line that identifies the email's intent
body EmailTemplateBody false none The main part of the email containing the message's text, images, and other data.
templateType TemplateType false none An enum value indicating whether the email is an acknowledgement or standard response or outreach campaign
signatureId SignatureId false none Alvaria-generated unique identifier for the signature entity.
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

PatchSignaturesRequest

{
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "version": 1002
}

Properties

Name Type Required Restrictions Description
contents SignatureContents false none The body of the signature containing the signature's text, images, and other data.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency

PutWorkTypesEmailTemplatesRequest

{
  "version": 1002,
  "emailTemplates": [
    {
      "id": 7
    }
  ]
}

Properties

Name Type Required Restrictions Description
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
emailTemplates [PutWorkTypeEmailTemplateFragment] true none Array of email template identifiers.

WorkTypeFriendlyName

{
  "locale": "en-US",
  "value": "billing"
}

Properties

Name Type Required Restrictions Description
locale string true none The IETF Language Tag.
value string true none The Localized value of the Entity Name.

FriendlyName

{
  "locale": "en-US",
  "value": "entity name"
}

Properties

Name Type Required Restrictions Description
locale string true none IETF Language Tag
value string true none The Localized value of the Entity Name

ContactDataDefCollection

{
  "kind": "via#contactDataDefCollection",
  "contactDataDefs": [
    {
      "kind": "via#contactDataDef",
      "id": "77",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Outreach-Default-CDD"
        }
      ],
      "channel": {
        "channelType": "voice"
      }
    },
    {
      "kind": "via#contactDataDef",
      "id": "78",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "NB_Unique"
        }
      ],
      "channel": {
        "channelType": "voice"
      }
    }
  ],
  "totalItems": 2
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
contactDataDefs [ContactDataDefFragment] false none none
totalItems integer false none The total number of Entity instances existing in the system.

ContactDataDefFragment

{
  "kind": "via#contactDataDef",
  "id": "77",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "channel": {
    "channelType": "voice"
  }
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string false none Alvaria-generated unique identifier for the Contact Data Definition.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
channel ChannelTypeFragment false none none

ContactDataDef

{
  "kind": "via#contactDataDef",
  "id": "77",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "Outreach-CDD-Default"
    }
  ],
  "channel": {
    "channelType": "voice"
  },
  "description": "Outreach-Default-CDD",
  "version": 2,
  "contactDataDefDetail": [
    {
      "kind": "via#contactDataDefDetailCollection",
      "details": [
        {
          "kind": "via#contactDataDefDetails",
          "contactDataDefReservedWordId": "40",
          "readOnly": true,
          "fieldOrder": 2,
          "label": "First Name",
          "maskType": "maskEntireValue",
          "maskSize": 5
        }
      ],
      "totalItems": 1
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string false none Alvaria-generated unique identifier for the Entity
friendlyName [FriendlyName] false none Unique descriptive name for this Contact Data Definition instance.
channel ChannelTypeFragment false none none
description string false none User Friendly description of the entity type.
version integer(int32) false none Version of the data associated with this instance. This is a number that starts with the value 1 and increments by one for each update made to an entity instance.
contactDataDefDetail [ContactDataDefDetailCollection] false none Fields associated with this Contact Data Definition

ContactDataDefDetailCollection

{
  "kind": "via#contactDataDefDetailCollection",
  "details": [
    {
      "kind": "via#contactDataDefDetails",
      "contactDataDefReservedWordId": "40",
      "readOnly": true,
      "fieldOrder": 2,
      "label": "First Name",
      "maskType": "maskEntireValue",
      "maskSize": 5
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
details [ContactDataDefDetail] false none Detail records associated to a given Contact Data Definition
totalItems integer false none The total number of disposition rules returned in the collection

ContactDataDefDetail

{
  "kind": "via#contactDataDefDetails",
  "contactDataDefReservedWordId": "40",
  "readOnly": true,
  "fieldOrder": 2,
  "label": "First Name",
  "maskType": "maskEntireValue",
  "maskSize": 5
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
contactDataDefReservedWordId string false none Alvaria-generated unique identifier for the Contact Data Definition Reserved Word.
readOnly boolean false none True indicates that field is not modifiable.
fieldOrder integer(int32) false none Number indicating the position of the field within the Contact Data record
label string false none Field name which will appear on the agent's screen
maskType string false none The mask type specifies if and how the data in the field should be hidden for security purposes.
maskSize integer false none number of characters of the contact data to be masked on the agent screen pop

Enumerated Values

Property Value
maskType noMasking
maskType maskEntireValue
maskType maskFirstNCharacters
maskType maskLastNCharacters

ContactDataDefReservedWordCollection

{
  "kind": "via#contactDataDefReservedWordCollection",
  "contactDataDefReservedWords": [
    {
      "kind": "via#contactDataDefReservedWord",
      "id": "113",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "ACCOUNT_SMS"
        }
      ],
      "channel": {
        "channelType": "sms"
      }
    },
    {
      "kind": "via#contactDataDefReservedWord",
      "id": "114",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "DNIS"
        }
      ],
      "channel": {
        "channelType": "voice"
      }
    }
  ],
  "totalItems": 2
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
contactDataDefReservedWords [ContactDataDefReservedWordFragment] false none none
totalItems integer false none The total number of Entity instances existing in the system.

ContactDataDefReservedWordFragment

{
  "kind": "via#contactDataDefReservedWord",
  "id": "114",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MobilePhone"
    }
  ],
  "channel": {
    "channelType": "voice"
  }
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
id string false none Alvaria-generated unique identifier for the Contact Data Definition Reserved Word.
friendlyName [FriendlyName] false none A preconfigured reserved word for common contact data that companies send to their agents.
channel ChannelTypeFragment false none none

WorkType

{
  "kind": "via#workType",
  "active": true,
  "version": 1002,
  "id": "7.7",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MREhubEmail"
    }
  ],
  "dispPlanId": "7",
  "channel": {
    "channelType": "voice"
  },
  "direction": "outreach",
  "emailAddress": "sales@alvaria.com",
  "dailyServiceLevel": true,
  "workTypeClassification": "OutreachSMSWorkType",
  "serviceLevelFormulaId": "ServiceLevel0",
  "serviceLevelWindow": 1,
  "shortCallInterval": 1,
  "serviceLevelThreshold": 2,
  "targetServiceLevelPercentage": 3.1,
  "workTypeGroupId": 18,
  "state": "inactive",
  "contactDataDefId": 22,
  "transcriptionType": "postcall",
  "language": "en-US"
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
active Active true none Whether the entity is available for use.
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
id string true none Alvaria-generated unique identifier for the Entity
friendlyName [WorkTypeFriendlyName] true none Unique descriptive name for this Work Type instance.
dispPlanId string true none Alvaria-generated unique identifier for the work type's Disposition Routing Plan.
channel ChannelTypeFragment true none none
direction Direction true none Direction of a work type. This is used to filter by work type direction.
emailAddress string true none Inbound email address of work types with channelType = email
dailyServiceLevel boolean false none Is the service level for this work type calculated for a 24-hour period. If false the service level is calculated based on the serviceLevelWindow interval.
workTypeClassification string true none none
serviceLevelFormulaId string false none Alvaria-generated unique identifier for the different service level formulas that this work type uses to determine service level
serviceLevelWindow integer false none Defines the number of minutes comprise to rolling window used to calculate the service level. This value only applies if the "dailyServiceLevel" field is set to "false"
shortCallInterval integer false none The threshold in seconds that a work item must cross before being considered abandoned.
serviceLevelThreshold integer false none The threshold in seconds that a work item's queue time must fall under to be considered handled within service level.
targetServiceLevelPercentage number(double) false none A floating number representing the goal percent of work items offered to an work type are handled by a resource within a specified period of time.
workTypeGroupId integer false none Alvaria-generated unique identifier for the work type's group.
state WorkTypeState false none current state of the work type
contactDataDefId integer false none Alvaria-generated unique identifier for the work type's contact data definition
transcriptionType string true none For voice work types, indicates if and when the call should be transcribed. Values none (No transcription), realtime (transcription in real-time during call only), postcall (transcription only after call completes), both (transcription during and after call)
language string true none The IETF language assigned to this work type

Enumerated Values

Property Value
workTypeClassification InboundVoiceWorkType
workTypeClassification InboundSMSWorkType
workTypeClassification InboundChatWorkType
workTypeClassification InboundEmailWorkType
workTypeClassification OutreachVoiceWorkType
workTypeClassification OutreachSMSWorkType
workTypeClassification OutreachEmailWorkType
serviceLevelFormulaId ServiceLevel0
serviceLevelFormulaId ServiceLevel1
serviceLevelFormulaId ServiceLevel2
serviceLevelFormulaId ServiceLevel3
serviceLevelFormulaId ServiceLevel4
transcriptionType none
transcriptionType realtime
transcriptionType postcall
transcriptionType both

OutreachSMSWorkType

{
  "defaultServiceProviderId": 7,
  "defaultServiceProviderAccountId": 12345,
  "defaultCallerId": 1,
  "serviceProviderShortCode": 12234456678,
  "vsn": "script@org",
  "kind": "via#workType",
  "active": true,
  "version": 1002,
  "id": "7.7",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MREhubEmail"
    }
  ],
  "dispPlanId": "7",
  "channel": {
    "channelType": "voice"
  },
  "direction": "outreach",
  "emailAddress": "sales@alvaria.com",
  "dailyServiceLevel": true,
  "workTypeClassification": "OutreachSMSWorkType",
  "serviceLevelFormulaId": "ServiceLevel0",
  "serviceLevelWindow": 1,
  "shortCallInterval": 1,
  "serviceLevelThreshold": 2,
  "targetServiceLevelPercentage": 3.1,
  "workTypeGroupId": 18,
  "state": "inactive",
  "contactDataDefId": 22,
  "transcriptionType": "postcall",
  "language": "en-US"
}

Properties

Name Type Required Restrictions Description
defaultServiceProviderId integer false none the default service provider Id
defaultServiceProviderAccountId integer false none the default service provider account Id
defaultCallerId integer false none the default caller Id
serviceProviderShortCode integer false none the service provider short code
vsn string false none vsn

allOf - discriminator: WorkType.workTypeClassification

Name Type Required Restrictions Description
anonymous WorkType false none none

and

Name Type Required Restrictions Description
anonymous any false none none

OutreachEmailWorkType

{
  "fromName": "Alvaria Sales",
  "fromAddress": "no-reply@alvaria.com",
  "kind": "via#workType",
  "active": true,
  "version": 1002,
  "id": "7.7",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "MREhubEmail"
    }
  ],
  "dispPlanId": "7",
  "channel": {
    "channelType": "voice"
  },
  "direction": "outreach",
  "emailAddress": "sales@alvaria.com",
  "dailyServiceLevel": true,
  "workTypeClassification": "OutreachSMSWorkType",
  "serviceLevelFormulaId": "ServiceLevel0",
  "serviceLevelWindow": 1,
  "shortCallInterval": 1,
  "serviceLevelThreshold": 2,
  "targetServiceLevelPercentage": 3.1,
  "workTypeGroupId": 18,
  "state": "inactive",
  "contactDataDefId": 22,
  "transcriptionType": "postcall",
  "language": "en-US"
}

Properties

Name Type Required Restrictions Description
fromName string false none Name to be shown to the reveiver
fromAddress string false none Email address to be shown to the receiver.

allOf - discriminator: WorkType.workTypeClassification

Name Type Required Restrictions Description
anonymous WorkType false none none

and

Name Type Required Restrictions Description
anonymous any false none none

WorkTypeWorkHandlerRules

{
  "kind": "via#workHandlerRules",
  "version": 1002,
  "canAddAttachments": true,
  "canBlindTransfer": true,
  "canCallBackSelf": true,
  "canCallBackWorkType": true,
  "canChangePhoneInPreview": true,
  "canConference": true,
  "canConsult": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canRecord": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "canWarmTransfer": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "emailDeliveryType": "push",
  "isTimedPreview": true,
  "maxCallBackDays": 5,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisplayPastCallBackWarning": true,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "previewTimeout": 30,
  "urlForwardType": "auto",
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "isAuthenticated": false
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
canAddAttachments CanAddAttachments true none Whether the agent can add attachments to an email interaction. Applies only to Email work types.
canBlindTransfer CanBlindTransfer true none Whether the agent can initiate a blind transfer
canCallBackSelf CanCallBackSelf true none Whether the agent can direct callbacks to themselves
canCallBackWorkType CanCallBackWorkType true none Allow work type callbacks for this work type
canChangePhoneInPreview CanChangePhoneInPreview true none Whether the agent can initiate an outbound interaction
canConference CanConference true none Whether the agent can initiate a conference
canConsult CanConsult true none Whether the agent can initiate a consultation
canDial CanDial true none Whether the agent can initiate voice interactions while in states Idle, Park, Wrap, or while on a non-voice interaction.
canForwardEmailToExternal CanForwardEmailToExternal true none Whether the agent can forward an email interaction to an external email address(es). Applies only to Email work types.
canHold CanHold true none Enables the user to place the contact on Hold.
canInitiateNewOutboundEmail CanInitiateNewOutboundEmail true none Whether the agent can create and send outbound email messages to external email addresses
canPauseResumeRecording CanPauseResumeRecording true none Whether the agent can pause and resume recording of a conversation
canRecord CanRecord true none Whether the agent can initiate recording of a conversation
canTerminate CanTerminate true none Whether the agent can terminate an interaction
canViewTeamLeads CanViewTeamLeads true none Whether the agent can consult and transfer to team leads.
canViewWorkHandlers CanViewWorkHandlers true none Whether the agent can consult and transfer to agents.
canViewWorktypes CanViewWorktypes true none Whether the agent can consult and transfer to work types.
canWarmTransfer CanWarmTransfer true none Whether the agent can initiate a warm transfer
defaultCallBackWorkTypeId DefaultCallBackWorkTypeId true none Alvaria-generated unique identifier of the Outreach work type to use by default when scheduling a Callback.
emailDeliveryType EmailDeliveryType true none If pull selected, enables the agent to select an email to work on from the Inbound Email work type queue.
isTimedPreview IsTimedPreview true none Whether an automated interaction is previewed before dialing
maxCallBackDays MaxCallBackDays true none Maximum number of days in which a callback must be scheduled
maxWrapTime MaxWrapTime true none Maximum number of seconds an agent can be in Wrap in an interaction.
minWrapTime MinWrapTime true none Minimum number of seconds an agent must be in Wrap in an interaction before dispositioning it.
mustDisplayPastCallBackWarning MustDisplayPastCallBackWarning true none When true, a warning is displayed when a callback is scheduled behind the agent's time zone
mustDisposition MustDisposition true none Whether a disposition is required for interactions.
mustHideSpeedDialPhone MustHideSpeedDialPhone true none If true, only the speed dial name is shown. The phone number is hidden.
previewTimeout PreviewTimeout true none Seconds that an automated interaction is previewed before being dialed
urlForwardType URLForwardType true none Specifies whether the URLs from any browser navigation done by the agent should be automatically pushed (auto) or not (dragAndDrop) to a web chat customer. Applies only to Chat work types.
wrapExceedAction WrapExceedActionType true none The action to take when the agent’s time in Wrap in an interaction exceeds the configured maxWrapTime.
wrapType WrapType true none Specifies whether interactions must go to Wrap (required), must not go to Wrap (none), or may go to Wrap (optional).
wrapWarningDelay WrapWarningDelay true none Maximum number of seconds an agent can be in Wrap before receiving a warning.
isAuthenticated IsAuthenticated true none Whether a web chat customer must be authenticated with an external service when initiating a chat interaction. Applies only to Chat work types.

PutWorkTypeWorkHandlerRulesRequest

{
  "version": 1002,
  "canAddAttachments": true,
  "can3WayXfer": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisposition": true,
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "isAuthenticated": false
}

Properties

Name Type Required Restrictions Description
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
canAddAttachments CanAddAttachments true none Whether the agent can add attachments to an email interaction. Applies only to Email work types.
can3WayXfer Can3WayXfer true none Whether the agent can initiate conferences and blind transfers
canDial CanDial true none Whether the agent can initiate voice interactions while in states Idle, Park, Wrap, or while on a non-voice interaction.
canForwardEmailToExternal CanForwardEmailToExternal true none Whether the agent can forward an email interaction to an external email address(es). Applies only to Email work types.
canHold CanHold true none Enables the user to place the contact on Hold.
canInitiateNewOutboundEmail CanInitiateNewOutboundEmail true none Whether the agent can create and send outbound email messages to external email addresses
canPauseResumeRecording CanPauseResumeRecording true none Whether the agent can pause and resume recording of a conversation
canTerminate CanTerminate true none Whether the agent can terminate an interaction
canViewTeamLeads CanViewTeamLeads true none Whether the agent can consult and transfer to team leads.
canViewWorkHandlers CanViewWorkHandlers true none Whether the agent can consult and transfer to agents.
canViewWorktypes CanViewWorktypes true none Whether the agent can consult and transfer to work types.
defaultCallBackWorkTypeId DefaultCallBackWorkTypeId true none Alvaria-generated unique identifier of the Outreach work type to use by default when scheduling a Callback.
maxWrapTime MaxWrapTime true none Maximum number of seconds an agent can be in Wrap in an interaction.
minWrapTime MinWrapTime true none Minimum number of seconds an agent must be in Wrap in an interaction before dispositioning it.
mustDisposition MustDisposition true none Whether a disposition is required for interactions.
wrapExceedAction WrapExceedActionType true none The action to take when the agent’s time in Wrap in an interaction exceeds the configured maxWrapTime.
wrapType WrapType true none Specifies whether interactions must go to Wrap (required), must not go to Wrap (none), or may go to Wrap (optional).
wrapWarningDelay WrapWarningDelay true none Maximum number of seconds an agent can be in Wrap before receiving a warning.
isAuthenticated IsAuthenticated true none Whether a web chat customer must be authenticated with an external service when initiating a chat interaction. Applies only to Chat work types.

UserWorkHandlerRules

{
  "kind": "via#workHandlerRules",
  "version": 1002,
  "canAddAttachments": true,
  "canBlindTransfer": true,
  "canCallBackSelf": true,
  "canCallBackWorkType": true,
  "canChangePhoneInPreview": true,
  "canConference": true,
  "canConsult": true,
  "canDial": true,
  "canForwardEmailToExternal": true,
  "canHold": true,
  "canInitiateNewOutboundEmail": true,
  "canPauseResumeRecording": true,
  "canRecord": true,
  "canTerminate": true,
  "canViewTeamLeads": true,
  "canViewWorkHandlers": true,
  "canViewWorktypes": true,
  "canWarmTransfer": true,
  "defaultCallBackWorkTypeId": "AB345.100",
  "emailDeliveryType": "push",
  "isTimedPreview": true,
  "maxCallBackDays": 5,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisplayPastCallBackWarning": true,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "previewTimeout": 30,
  "urlForwardType": "auto",
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "canDeleteVoicemail": true,
  "canForwardVoicemail": true,
  "canNotReady": true,
  "canPark": true,
  "isOnDemand": true,
  "maxEmailInteractions": 5,
  "maxMessageInteractions": 5,
  "maxTotalInteractions": 5,
  "mustDisplayWorkTypes": true,
  "mustSelectWorkType": true,
  "parkWarningTime": 5
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
canAddAttachments CanAddAttachments true none Whether the agent can add attachments to an email interaction. Applies only to Email work types.
canBlindTransfer CanBlindTransfer true none Whether the agent can initiate a blind transfer
canCallBackSelf CanCallBackSelf true none Whether the agent can direct callbacks to themselves
canCallBackWorkType CanCallBackWorkType true none Allow work type callbacks for this work type
canChangePhoneInPreview CanChangePhoneInPreview true none Whether the agent can initiate an outbound interaction
canConference CanConference true none Whether the agent can initiate a conference
canConsult CanConsult true none Whether the agent can initiate a consultation
canDial CanDial true none Whether the agent can initiate voice interactions while in states Idle, Park, Wrap, or while on a non-voice interaction.
canForwardEmailToExternal CanForwardEmailToExternal true none Whether the agent can forward an email interaction to an external email address(es). Applies only to Email work types.
canHold CanHold true none Enables the user to place the contact on Hold.
canInitiateNewOutboundEmail CanInitiateNewOutboundEmail true none Whether the agent can create and send outbound email messages to external email addresses
canPauseResumeRecording CanPauseResumeRecording true none Whether the agent can pause and resume recording of a conversation
canRecord CanRecord true none Whether the agent can initiate recording of a conversation
canTerminate CanTerminate true none Whether the agent can terminate an interaction
canViewTeamLeads CanViewTeamLeads true none Whether the agent can consult and transfer to team leads.
canViewWorkHandlers CanViewWorkHandlers true none Whether the agent can consult and transfer to agents.
canViewWorktypes CanViewWorktypes true none Whether the agent can consult and transfer to work types.
canWarmTransfer CanWarmTransfer true none Whether the agent can initiate a warm transfer
defaultCallBackWorkTypeId DefaultCallBackWorkTypeId true none Alvaria-generated unique identifier of the Outreach work type to use by default when scheduling a Callback.
emailDeliveryType EmailDeliveryType true none If pull selected, enables the agent to select an email to work on from the Inbound Email work type queue.
isTimedPreview IsTimedPreview true none Whether an automated interaction is previewed before dialing
maxCallBackDays MaxCallBackDays true none Maximum number of days in which a callback must be scheduled
maxWrapTime MaxWrapTime true none Maximum number of seconds an agent can be in Wrap in an interaction.
minWrapTime MinWrapTime true none Minimum number of seconds an agent must be in Wrap in an interaction before dispositioning it.
mustDisplayPastCallBackWarning MustDisplayPastCallBackWarning true none When true, a warning is displayed when a callback is scheduled behind the agent's time zone
mustDisposition MustDisposition true none Whether a disposition is required for interactions.
mustHideSpeedDialPhone MustHideSpeedDialPhone true none If true, only the speed dial name is shown. The phone number is hidden.
previewTimeout PreviewTimeout true none Seconds that an automated interaction is previewed before being dialed
urlForwardType URLForwardType true none Specifies whether the URLs from any browser navigation done by the agent should be automatically pushed (auto) or not (dragAndDrop) to a web chat customer. Applies only to Chat work types.
wrapExceedAction WrapExceedActionType true none The action to take when the agent’s time in Wrap in an interaction exceeds the configured maxWrapTime.
wrapType WrapType true none Specifies whether interactions must go to Wrap (required), must not go to Wrap (none), or may go to Wrap (optional).
wrapWarningDelay WrapWarningDelay true none Maximum number of seconds an agent can be in Wrap before receiving a warning.
canDeleteVoicemail CanDeleteVoicemail true none Whether the user can delete voicemail from their inbox
canForwardVoicemail CanForwardVoicemail true none Whether the user can forward voicemail to another mailbox, mailbox group, or external voicemail system
canNotReady CanNotReady true none Whether the agent can record a personal greeting.
canPark CanPark true none Whether the agent can initiate a outbound manual dial and receive non-service calls, such as internal, consult, or DID calls
isOnDemand IsOnDemand true none Whether the system can dial to an agent resource instead of maintaining a permanent voice link.
maxEmailInteractions MaxEmailInteractions true none Max number of email interactions an agent can receive at one time
maxMessageInteractions MaxMessageInteractions true none Max number of Chat/SMS interactions an agent can receive at one time
maxTotalInteractions MaxTotalInteractions true none Max number of Inbound interactions an agent can receive at one time. This includes Voice, Chat, SMS and Email. (Workhandler is always allowed only one voice call with a second consult line, rest of the lines can have non voice
calls.)
mustDisplayWorkTypes MustDisplayWorkTypes true none Whether a list of assigned work types is shown to an agent prior to dialing
mustSelectWorkType MustSelectWorkType true none Whether an agent can dial without selecting a work type from a list
parkWarningTime ParkWarningTime true none Max seconds before agents are warned they have exceeded the allotted Park time

PutUserWorkHandlerRulesRequest

{
  "version": 1002,
  "canCallBackSelf": true,
  "canDial": true,
  "canPauseResumeRecording": true,
  "maxWrapTime": 5,
  "minWrapTime": 5,
  "mustDisposition": true,
  "mustHideSpeedDialPhone": true,
  "wrapExceedAction": "displayWarning",
  "wrapType": "required",
  "wrapWarningDelay": 5,
  "canDeleteVoicemail": true,
  "canForwardVoicemail": true,
  "canNotReady": true,
  "canPark": true,
  "isOnDemand": true,
  "maxEmailInteractions": 5,
  "maxMessageInteractions": 5,
  "maxTotalInteractions": 5,
  "mustSelectWorkType": true,
  "parkWarningTime": 5
}

Properties

Name Type Required Restrictions Description
version Version true none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
canCallBackSelf CanCallBackSelf true none Whether the agent can direct callbacks to themselves
canDial CanDial true none Whether the agent can initiate voice interactions while in states Idle, Park, Wrap, or while on a non-voice interaction.
canPauseResumeRecording CanPauseResumeRecording true none Whether the agent can pause and resume recording of a conversation
maxWrapTime MaxWrapTime true none Maximum number of seconds an agent can be in Wrap in an interaction.
minWrapTime MinWrapTime true none Minimum number of seconds an agent must be in Wrap in an interaction before dispositioning it.
mustDisposition MustDisposition true none Whether a disposition is required for interactions.
mustHideSpeedDialPhone MustHideSpeedDialPhone true none If true, only the speed dial name is shown. The phone number is hidden.
wrapExceedAction WrapExceedActionType true none The action to take when the agent’s time in Wrap in an interaction exceeds the configured maxWrapTime.
wrapType WrapType true none Specifies whether interactions must go to Wrap (required), must not go to Wrap (none), or may go to Wrap (optional).
wrapWarningDelay WrapWarningDelay true none Maximum number of seconds an agent can be in Wrap before receiving a warning.
canDeleteVoicemail CanDeleteVoicemail true none Whether the user can delete voicemail from their inbox
canForwardVoicemail CanForwardVoicemail true none Whether the user can forward voicemail to another mailbox, mailbox group, or external voicemail system
canNotReady CanNotReady true none Whether the agent can record a personal greeting.
canPark CanPark true none Whether the agent can initiate a outbound manual dial and receive non-service calls, such as internal, consult, or DID calls
isOnDemand IsOnDemand true none Whether the system can dial to an agent resource instead of maintaining a permanent voice link.
maxEmailInteractions MaxEmailInteractions true none Max number of email interactions an agent can receive at one time
maxMessageInteractions MaxMessageInteractions true none Max number of Chat/SMS interactions an agent can receive at one time
maxTotalInteractions MaxTotalInteractions true none Max number of Inbound interactions an agent can receive at one time. This includes Voice, Chat, SMS and Email. (Workhandler is always allowed only one voice call with a second consult line, rest of the lines can have non voice
calls.)
mustSelectWorkType MustSelectWorkType true none Whether an agent can dial without selecting a work type from a list
parkWarningTime ParkWarningTime true none Max seconds before agents are warned they have exceeded the allotted Park time

CanAddAttachments

true

Whether the agent can add attachments to an email interaction. Applies only to Email work types.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can add attachments to an email interaction. Applies only to Email work types.

CanBlindTransfer

true

Whether the agent can initiate a blind transfer

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate a blind transfer

CanCallBackSelf

true

Whether the agent can direct callbacks to themselves

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can direct callbacks to themselves

CanCallBackWorkType

true

Allow work type callbacks for this work type

Properties

Name Type Required Restrictions Description
anonymous boolean false none Allow work type callbacks for this work type

CanChangePhoneInPreview

true

Whether the agent can initiate an outbound interaction

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate an outbound interaction

CanConference

true

Whether the agent can initiate a conference

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate a conference

CanConsult

true

Whether the agent can initiate a consultation

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate a consultation

CanDial

true

Whether the agent can initiate voice interactions while in states Idle, Park, Wrap, or while on a non-voice interaction.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate voice interactions while in states Idle, Park, Wrap, or while on a non-voice interaction.

CanForwardEmailToExternal

true

Whether the agent can forward an email interaction to an external email address(es). Applies only to Email work types.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can forward an email interaction to an external email address(es). Applies only to Email work types.

CanHold

true

Enables the user to place the contact on Hold.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Enables the user to place the contact on Hold.

CanInitiateNewOutboundEmail

true

Whether the agent can create and send outbound email messages to external email addresses

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can create and send outbound email messages to external email addresses

CanPauseResumeRecording

true

Whether the agent can pause and resume recording of a conversation

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can pause and resume recording of a conversation

CanRecord

true

Whether the agent can initiate recording of a conversation

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate recording of a conversation

CanTerminate

true

Whether the agent can terminate an interaction

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can terminate an interaction

Can3WayXfer

true

Whether the agent can initiate conferences and blind transfers

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate conferences and blind transfers

CanViewTeamLeads

true

Whether the agent can consult and transfer to team leads.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can consult and transfer to team leads.

CanViewWorkHandlers

true

Whether the agent can consult and transfer to agents.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can consult and transfer to agents.

CanViewWorktypes

true

Whether the agent can consult and transfer to work types.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can consult and transfer to work types.

CanWarmTransfer

true

Whether the agent can initiate a warm transfer

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate a warm transfer

DefaultCallBackWorkTypeId

"AB345.100"

Alvaria-generated unique identifier of the Outreach work type to use by default when scheduling a Callback.

Properties

Name Type Required Restrictions Description
anonymous string false none Alvaria-generated unique identifier of the Outreach work type to use by default when scheduling a Callback.

EmailDeliveryType

"push"

If pull selected, enables the agent to select an email to work on from the Inbound Email work type queue.

Properties

Name Type Required Restrictions Description
anonymous string false none If pull selected, enables the agent to select an email to work on from the Inbound Email work type queue.

Enumerated Values

Property Value
anonymous none
anonymous push
anonymous pull

IsTimedPreview

true

Whether an automated interaction is previewed before dialing

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether an automated interaction is previewed before dialing

MaxCallBackDays

5

Maximum number of days in which a callback must be scheduled

Properties

Name Type Required Restrictions Description
anonymous integer false none Maximum number of days in which a callback must be scheduled

MaxWrapTime

5

Maximum number of seconds an agent can be in Wrap in an interaction.

Properties

Name Type Required Restrictions Description
anonymous integer false none Maximum number of seconds an agent can be in Wrap in an interaction.

MinWrapTime

5

Minimum number of seconds an agent must be in Wrap in an interaction before dispositioning it.

Properties

Name Type Required Restrictions Description
anonymous integer false none Minimum number of seconds an agent must be in Wrap in an interaction before dispositioning it.

MustDisplayPastCallBackWarning

true

When true, a warning is displayed when a callback is scheduled behind the agent's time zone

Properties

Name Type Required Restrictions Description
anonymous boolean false none When true, a warning is displayed when a callback is scheduled behind the agent's time zone

MustDisposition

true

Whether a disposition is required for interactions.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether a disposition is required for interactions.

MustHideSpeedDialPhone

true

If true, only the speed dial name is shown. The phone number is hidden.

Properties

Name Type Required Restrictions Description
anonymous boolean false none If true, only the speed dial name is shown. The phone number is hidden.

PreviewTimeout

30

Seconds that an automated interaction is previewed before being dialed

Properties

Name Type Required Restrictions Description
anonymous integer false none Seconds that an automated interaction is previewed before being dialed

WrapType

"required"

Specifies whether interactions must go to Wrap (required), must not go to Wrap (none), or may go to Wrap (optional).

Properties

Name Type Required Restrictions Description
anonymous string false none Specifies whether interactions must go to Wrap (required), must not go to Wrap (none), or may go to Wrap (optional).

Enumerated Values

Property Value
anonymous none
anonymous optional
anonymous required

WrapWarningDelay

5

Maximum number of seconds an agent can be in Wrap before receiving a warning.

Properties

Name Type Required Restrictions Description
anonymous integer false none Maximum number of seconds an agent can be in Wrap before receiving a warning.

IsAuthenticated

false

Whether a web chat customer must be authenticated with an external service when initiating a chat interaction. Applies only to Chat work types.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether a web chat customer must be authenticated with an external service when initiating a chat interaction. Applies only to Chat work types.

WrapExceedActionType

"displayWarning"

The action to take when the agent’s time in Wrap in an interaction exceeds the configured maxWrapTime.

Properties

Name Type Required Restrictions Description
anonymous string false none The action to take when the agent’s time in Wrap in an interaction exceeds the configured maxWrapTime.

Enumerated Values

Property Value
anonymous none
anonymous displayWarning
anonymous changeToNotReady
anonymous changeToIdle
anonymous changeToPark

URLForwardType

"auto"

Specifies whether the URLs from any browser navigation done by the agent should be automatically pushed (auto) or not (dragAndDrop) to a web chat customer. Applies only to Chat work types.

Properties

Name Type Required Restrictions Description
anonymous string false none Specifies whether the URLs from any browser navigation done by the agent should be automatically pushed (auto) or not (dragAndDrop) to a web chat customer. Applies only to Chat work types.

Enumerated Values

Property Value
anonymous auto
anonymous dragAndDrop

CanDeleteVoicemail

true

Whether the user can delete voicemail from their inbox

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the user can delete voicemail from their inbox

CanForwardVoicemail

true

Whether the user can forward voicemail to another mailbox, mailbox group, or external voicemail system

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the user can forward voicemail to another mailbox, mailbox group, or external voicemail system

CanNotReady

true

Whether the agent can record a personal greeting.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can record a personal greeting.

CanPark

true

Whether the agent can initiate a outbound manual dial and receive non-service calls, such as internal, consult, or DID calls

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the agent can initiate a outbound manual dial and receive non-service calls, such as internal, consult, or DID calls

IsOnDemand

true

Whether the system can dial to an agent resource instead of maintaining a permanent voice link.

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether the system can dial to an agent resource instead of maintaining a permanent voice link.

MaxEmailInteractions

5

Max number of email interactions an agent can receive at one time

Properties

Name Type Required Restrictions Description
anonymous integer false none Max number of email interactions an agent can receive at one time

MaxMessageInteractions

5

Max number of Chat/SMS interactions an agent can receive at one time

Properties

Name Type Required Restrictions Description
anonymous integer false none Max number of Chat/SMS interactions an agent can receive at one time

MaxTotalInteractions

5

Max number of Inbound interactions an agent can receive at one time. This includes Voice, Chat, SMS and Email. (Workhandler is always allowed only one voice call with a second consult line, rest of the lines can have non voice calls.)

Properties

Name Type Required Restrictions Description
anonymous integer false none Max number of Inbound interactions an agent can receive at one time. This includes Voice, Chat, SMS and Email. (Workhandler is always allowed only one voice call with a second consult line, rest of the lines can have non voice
calls.)

MustDisplayWorkTypes

true

Whether a list of assigned work types is shown to an agent prior to dialing

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether a list of assigned work types is shown to an agent prior to dialing

MustSelectWorkType

true

Whether an agent can dial without selecting a work type from a list

Properties

Name Type Required Restrictions Description
anonymous boolean false none Whether an agent can dial without selecting a work type from a list

ParkWarningTime

5

Max seconds before agents are warned they have exceeded the allotted Park time

Properties

Name Type Required Restrictions Description
anonymous integer false none Max seconds before agents are warned they have exceeded the allotted Park time

ChannelTypeFragment

{
  "channelType": "voice"
}

Properties

Name Type Required Restrictions Description
channelType string true none Media type (voice, chat, sms, email)

Enumerated Values

Property Value
channelType voice
channelType chat
channelType sms
channelType email

ChannelTypeCollection

[
  {
    "channelType": "voice"
  },
  {
    "channelType": "email"
  }
]

Properties

Name Type Required Restrictions Description
anonymous [ChannelTypeFragment] false none none

Direction

"outreach"

Direction of a work type. This is used to filter by work type direction.

Properties

Name Type Required Restrictions Description
anonymous string false none Direction of a work type. This is used to filter by work type direction.

Enumerated Values

Property Value
anonymous inbound
anonymous outreach

AudioMessage

{
  "kind": "via#audiomessage",
  "id": 53,
  "language": "en-US",
  "duration": 20,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the AudioMessage id.
language string false none The IETF Language for the audio message language.
duration integer false none Length of the audio message in seconds
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

AudioMessageCollection

{
  "kind": "via#audioMessagesList",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "audioMessages": [
    {
      "kind": "via#audiomessage",
      "id": 53,
      "language": "en-US",
      "duration": 20,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
lastModifiedTime LastModifiedTime false none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
audioMessages [AudioMessage] false none Ordered array of audio messages.

PutWorkTypeEmailTemplateFragment

{
  "id": 7
}

Properties

Name Type Required Restrictions Description
id string false none Alvaria-generated unique identifier for the EmailTemplate.

EmailTemplateFragment

{
  "active": true,
  "kind": "via#emailTemplate",
  "id": 7,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "subject": "information",
  "templateType": "standardResponse"
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the EmailTemplate.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
subject string false none An introductory line that identifies the email's intent
templateType TemplateType false none An enum value indicating whether the email is an acknowledgement or standard response or outreach campaign

EmailTemplateFragmentCollection

{
  "kind": "via#emailTemplateFragmentCollection",
  "emailTemplates": [
    {
      "active": true,
      "kind": "via#emailTemplate",
      "id": 7,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "subject": "information",
      "templateType": "standardResponse"
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
emailTemplates [EmailTemplateFragment] false none Array of email template identifiers.
totalItems integer false none The total number of outreach workTypes with terminal prioritization available

WorkTypeEmailTemplateFragmentCollection

{
  "kind": "via#workTypeEmailTemplateFragmentCollection",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "emailTemplates": [
    {
      "active": true,
      "kind": "via#emailTemplate",
      "id": 7,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "subject": "information",
      "templateType": "standardResponse"
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
lastModifiedTime LastModifiedTime false none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
emailTemplates [EmailTemplateFragment] false none Array of email template identifiers.
totalItems integer false none The total number of outreach workTypes with terminal prioritization available

Signature

{
  "kind": "via#signature",
  "id": 7,
  "active": true,
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Signature id.
active Active false none Whether the entity is available for use.
contents SignatureContents false none The body of the signature containing the signature's text, images, and other data.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
lastModifiedTime LastModifiedTime false none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency

PostSignatureRequest

{
  "contents": "alvaria",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
contents SignatureContents false none The body of the signature containing the signature's text, images, and other data.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

SignatureFragment

{
  "active": true,
  "kind": "via#signature",
  "id": 1,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Signature.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

SignatureFragmentCollection

{
  "kind": "via#signatureFragmentCollection",
  "signatures": [
    {
      "active": true,
      "kind": "via#signature",
      "id": 1,
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
signatures [SignatureFragment] false none Array of signature identifiers.
totalItems integer false none The total number of outreach workTypes with terminal prioritization available

DispositionRoutingPlanRules

{
  "kind": "via#dispositionRoutingPlanRules",
  "id": "40",
  "dispositionCode": "CC_EXP",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Disposition.
dispositionCode string false none An Alvaria internal disposition code identifier for the dispositionRoutingPlan entity instance.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

PostEmailTemplateRequest

{
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
subject EmailTemplateSubject false none An introductory line that identifies the email's intent
body EmailTemplateBody false none The main part of the email containing the message's text, images, and other data.
templateType TemplateType false none An enum value indicating whether the email is an acknowledgement or standard response or outreach campaign
signatureId SignatureId false none Alvaria-generated unique identifier for the signature entity.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

EmailTemplate

{
  "kind": "via#emailTemplate",
  "id": "23",
  "active": true,
  "subject": "information",
  "body": "Here is the information you requested.",
  "templateType": "standardResponse",
  "signatureId": "1",
  "lastModifiedTime": "2017-11-30T13:01:58.247Z",
  "version": 1002,
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Via components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the emailTemplate entity
active Active false none Whether the entity is available for use.
subject string false none An introductory line that identifies the email's intent
body EmailTemplateBody false none The main part of the email containing the message's text, images, and other data.
templateType TemplateType false none An enum value indicating whether the email is an acknowledgement or standard response or outreach campaign
signatureId string false none Alvaria-generated unique identifier for the Signature.
lastModifiedTime LastModifiedTime false none Time of the most recent change to the entity instance, specified in ISO 8601 format and in UTC time zone (1985-04-12T23:20:50.525Z)
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

WorkHandlerStatusReasonCollection

{
  "kind": "via#workHandlerStatusReasonCollection",
  "workHandlerStatuses": [
    {
      "kind": "via#workHandlerStatus",
      "id": "114.114",
      "category": "Park",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "Auto Consult"
        }
      ]
    },
    {
      "kind": "via#workHandlerStatus",
      "id": "192.192",
      "category": "NotReady",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "On Break"
        }
      ]
    }
  ],
  "totalItems": 2
}

Properties

Name Type Required Restrictions Description
kind string true none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
workHandlerStatuses [WorkHandlerStatusReasonFragment] true none none
totalItems integer true none The total number of Entity instances existing in the system.

WorkHandlerStatusReasonFragment

{
  "kind": "via#workHandlerStatus",
  "id": "17.17",
  "category": "Park",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "Initial Login"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string true none Alvaria-generated unique identifier for the workHandlerStatusReason.
id string true none Alvaria-generated unique identifier for the entity instance.
category string true none Alvaria-generated unique identifier for the workHandlerStatusReason.
friendlyName [FriendlyName] true none A descriptive name for this WorkHandlerStatus.

Enumerated Values

Property Value
category Park
category NotReady
category LoggedOut
category CallRejectedReason

WorkTypeState

"inactive"

current state of the work type

Properties

Name Type Required Restrictions Description
anonymous string false none current state of the work type

Enumerated Values

Property Value
anonymous none
anonymous inactive
anonymous active
anonymous unmanned
anonymous holiday
anonymous paused

SkillList

{
  "kind": "via#skillList",
  "skills": [
    {
      "active": true,
      "kind": "via#skill",
      "id": "18",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ]
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
skills [Skill] false none none
totalItems integer false none indicates the total number of records in the result set. The client can use this value to determine how many calls will be required to navigate through the entire result set.

Skill

{
  "active": true,
  "kind": "via#skill",
  "id": "18",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ]
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Entity.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.

SkillDetails

{
  "kind": "via#skillDetails",
  "active": true,
  "id": "18",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "skillLevels": [
    {
      "kind": "via#skillLevel",
      "id": "35",
      "friendlyName": [
        {
          "locale": "en-US",
          "value": "entity name"
        }
      ],
      "levelPriority": "lowest"
    }
  ]
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
active Active false none Whether the entity is available for use.
id string false none Alvaria-generated unique identifier for the Entity.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
skillLevels [SkillLevel] false none none

SkillLevel

{
  "kind": "via#skillLevel",
  "id": "35",
  "friendlyName": [
    {
      "locale": "en-US",
      "value": "entity name"
    }
  ],
  "levelPriority": "lowest"
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Entity.
friendlyName FriendlyNameCollection false none Displayable representation of the entity name. One entry per supported locale.
levelPriority SkillLevelPriorityType false none An enum value indicating priority for skill level

SkillLevelPriorityType

"lowest"

An enum value indicating priority for skill level

Properties

Name Type Required Restrictions Description
anonymous string false none An enum value indicating priority for skill level

Enumerated Values

Property Value
anonymous lowest
anonymous low
anonymous medium
anonymous high
anonymous highest

UserSkillList

{
  "kind": "via#userSkillList",
  "version": 1002,
  "userSkills": [
    {
      "active": true,
      "kind": "via#userSkill",
      "id": "18",
      "levelId": "35"
    }
  ],
  "totalItems": 1
}

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
userSkills [UserSkill] false none none
totalItems integer false none indicates the total number of records in the result set. The client can use this value to determine how many calls will be required to navigate through the entire result set.

UserSkill

{
  "active": true,
  "kind": "via#userSkill",
  "id": "18",
  "levelId": "35"
}

Properties

Name Type Required Restrictions Description
active Active false none Whether the entity is available for use.
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results
id string false none Alvaria-generated unique identifier for the Entity.
levelId string false none Alvaria-generated unique identifier for the Entity.

PutUserSkillsRequest

{
  "version": 1002,
  "userSkills": [
    {
      "id": "18",
      "levelId": "35"
    }
  ]
}

Properties

Name Type Required Restrictions Description
version Version false none Alvaria-generated identifier for the latest data values associated with the entity instance. This must be included in all POST operations because it enforces concurrency
userSkills [UserSkillsRequest] true none Array of user skills.

UserSkillsRequest

{
  "id": "18",
  "levelId": "35"
}

Properties

Name Type Required Restrictions Description
id string false none Alvaria-generated unique identifier for the Entity.
levelId string false none Alvaria-generated unique identifier for the Entity.