NAV Navigation
Shell Node.js HTTP

Alvaria Cloud Workforce 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.

The Alvaria™ Cloud Workforce REST APIs enable developers to create applications that retrieve information related to workforce administrative, agent productivity, employee, intra-day performance, and schedule entities.

These APIs provide read-only access to the following Alvaria™ Cloud Workforce entities:

Entity Introduced in Version
ACD instances 20.0
adherences 21.1
agent formula sets 20.0
agent productivities 21.1
agent productivity ACD groups 21.1
employee extra fields 20.0
employee extra field tabs 20.0
employee group classes 20.0
employee groups 20.0
employees 20.0
employee skills 20.0
employee super groups 20.0
forecast groups 21.1
intra-day performances 21.1
perspective purposes 20.0
perspectives 20.0
routing sets 21.1
segment audits 21.1
segment categories 20.0
segment definitions 20.0
segments 20.0
segment summaries 20.0
staff adjustment sets 21.1
staff groups 21.1
superstate hours 20.0
superstates 20.0
system information 20.0
system parameters 20.0
time zones 20.0

These APIs provide update access to the following Alvaria™ Cloud Workforce entities:

Entity Introduced in Version
employees 21.1
employee statuses 21.1

Rate Limiting

Each API is rate-limited with a quota of 110 requests per minute. The quota for each API is independent of the others and are tracked by x-api-key. Alvaria™ recommends that API clients expect and handle HTTP 429 responses and use the RateLimit-Reset response header to determine how long to wait before retrying the request and resuming. The quota is subject to change at any time.

Clients can discover the current rate limit using the RateLimit-Limit response header, as well as the remaining quota until the quota resets using RateLimit-Remaining. API clients with the potential for high-frequency requests can be prevented from imposing rate limiting on other clients by using different client credentials and x-api-keys.

When making requests for the sole purpose of rate limiting quota discovery be sure to include query parameters that will return little or no data. Search queries with no parameters (even if page size is zero) may cause the system to query all data in the system, which can be slow and detrimental to the performance of other components.

Paging & Large Result Sets

When querying for large volumes of data, multiple focused queries should be preferred instead of paging a single large result set. For example, if downloading schedules for a large date range that may include 100,000 segments, it can be more performant to break the request into multiple smaller requests along a dimension such as nominal date or employee in a way that each result set is unlikely to page. Avoid empty queries whenever possible as the result set may include all data in the database, much of which could be irrelevant. When synchronizing all data into an external data source consider that most data will change infrequently. Synchronizing large volumes of data that is unlikely to change at high frequency can adversely impact the performance of other components.

Base URLs

The orgId in the Base URLs should be replaced with the name of the customer organization.

Base URLs:

License: License: Creative Commons Attribution 4.0 International Public License

Authentication

Scope Scope Description
workforceapi access Alvaria™ Cloud Workforce resources
Scope Scope Description
workforceapi access Alvaria™ Cloud Workforce resources

IntraDayPerformance

Id IntraDayPerformance

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "includeConsolidationColumns": {
    "columnIdentifiers": [
      "RVSFORVOL",
      "ORGFORVOL"
    ],
    "forecastGroupIds": [
      "-9994561656",
      "-9994561254"
    ],
    "staffGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeForecastGroupColumns": [
    {
      "columnIdentifiers": [
        "RVSFORVOL",
        "ORGFORVOL"
      ],
      "forecastGroupId": "-979999997932"
    }
  ],
  "includeOpenHours": false,
  "includeProperties": false,
  "includeStaffGroupColumns": [
    {
      "columnIdentifiers": [
        "RVSFORVOL",
        "ORGFORVOL"
      ],
      "staffGroupId": "-102147482579"
    }
  ],
  "multiSkillConfiguration": {
    "adjustments": false,
    "basis": "Original",
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  }
};
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}/workforce/intraDayPerformance/{id}',
{
  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}/workforce/intraDayPerformance/{id} 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}/workforce/intraDayPerformance/{id}

Retrieves an intra-day performance that matches the id and specified selector.

Body parameter

{
  "includeConsolidationColumns": {
    "columnIdentifiers": [
      "RVSFORVOL",
      "ORGFORVOL"
    ],
    "forecastGroupIds": [
      "-9994561656",
      "-9994561254"
    ],
    "staffGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeForecastGroupColumns": [
    {
      "columnIdentifiers": [
        "RVSFORVOL",
        "ORGFORVOL"
      ],
      "forecastGroupId": "-979999997932"
    }
  ],
  "includeOpenHours": false,
  "includeProperties": false,
  "includeStaffGroupColumns": [
    {
      "columnIdentifiers": [
        "RVSFORVOL",
        "ORGFORVOL"
      ],
      "staffGroupId": "-102147482579"
    }
  ],
  "multiSkillConfiguration": {
    "adjustments": false,
    "basis": "Original",
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  }
}

Parameters

Name In Type Required Description
id path string true Describes the intra-day performance id to retrieve. Alvaria-generated unique identifier for the intra-day performance. Intra-day performances can be retrieved with the via/v2/organizations/{orgId}/workforce/search/intraDayPerformanceSummaries 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.
body body IntraDayPerformanceSelector true Describes the intra-day performance details to include.

Example responses

200 Response

{
  "kind": "via#workforceIntraDayPerformanceResponse",
  "intraDayPerformance": {
    "kind": "via#workforceIntraDayPerformance",
    "id": "975444541",
    "consolidation": {
      "columns": [
        {
          "dataType": "Float",
          "identifier": "RVSFORVOL",
          "maximum": 999999999,
          "maximumDecimals": 0,
          "minimum": 0,
          "readOnly": false,
          "summaryValue": 0,
          "values": [
            {
              "color": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "fontColor": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "index": 0,
              "threshold": "High",
              "value": "1"
            }
          ]
        }
      ],
      "openHours": {
        "periods": [
          {
            "index": 0,
            "open": false,
            "periodDateTime": "2010-12-31T13:13:51Z"
          }
        ]
      },
      "timeZoneId": "-9994561656.0"
    },
    "forecastGroups": [
      {
        "allocation": false,
        "columns": [
          {
            "dataType": "Float",
            "identifier": "RVSFORVOL",
            "maximum": 999999999,
            "maximumDecimals": 0,
            "minimum": 0,
            "readOnly": false,
            "summaryValue": 0,
            "values": [
              {
                "color": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "fontColor": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "index": 0,
                "threshold": "High",
                "value": "1"
              }
            ]
          }
        ],
        "forecastGroupId": "975444541",
        "groupProperties": {
          "assumptions": [
            {
              "allocationSet": "CSV",
              "averageHandeTimeOverride": "CSV",
              "scenario": "CSV",
              "staffBasis": "CSV",
              "volumeOverride": "CSV"
            }
          ],
          "histories": [
            {
              "timeStamp": "2008-09-15T15:53:00Z",
              "userName": "User",
              "action": "Action"
            }
          ]
        },
        "hasChildren": false,
        "multiSkill": false,
        "openHours": {
          "periods": [
            {
              "index": 0,
              "open": false,
              "periodDateTime": "2010-12-31T13:13:51Z"
            }
          ]
        }
      }
    ],
    "forecastUnit": "ThirtyMinute",
    "intraDayPerformanceDescription": "CSV 1/5/2003",
    "routingSet": {
      "kind": "via#workforceIntraDayPerformanceRoutingSet",
      "id": "975444541",
      "routings": [
        {
          "averageHandleTimeFactor": 1.5,
          "forecastGroupId": "-9994561656.0",
          "staffGroupId": "-9994561656.0"
        }
      ]
    },
    "staffGroups": [
      {
        "allocation": false,
        "columns": [
          {
            "dataType": "Float",
            "identifier": "RVSFORVOL",
            "maximum": 999999999,
            "maximumDecimals": 0,
            "minimum": 0,
            "readOnly": false,
            "summaryValue": 0,
            "values": [
              {
                "color": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "fontColor": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "index": 0,
                "threshold": "High",
                "value": "1"
              }
            ]
          }
        ],
        "groupProperties": {
          "assumptions": [
            {
              "allocationSet": "CSV",
              "averageHandeTimeOverride": "CSV",
              "scenario": "CSV",
              "staffBasis": "CSV",
              "volumeOverride": "CSV"
            }
          ],
          "histories": [
            {
              "timeStamp": "2008-09-15T15:53:00Z",
              "userName": "User",
              "action": "Action"
            }
          ]
        },
        "hasChildren": false,
        "multiSkill": false,
        "openHours": {
          "periods": [
            {
              "index": 0,
              "open": false,
              "periodDateTime": "2010-12-31T13:13:51Z"
            }
          ]
        },
        "staffGroupId": "975444541"
      }
    ],
    "startDateTime": "2010-12-31T13:13:51Z",
    "stopDateTime": "2010-12-31T13:13:51Z",
    "timeZoneId": "-9994561656.0"
  }
}

Responses

Status Meaning Description Schema
200 OK OK IntraDayPerformanceResponse
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
404 Not Found Not Found ErrorResponse
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

AcdInstances

Search AcdInstances

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "acdInstanceIds": [
    "994684565",
    "994687481"
  ],
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
};
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}/workforce/search/acdInstances',
{
  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}/workforce/search/acdInstances 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}/workforce/search/acdInstances

Retrieves a list of ACD instances that match the specified selector.

Body parameter

{
  "acdInstanceIds": [
    "994684565",
    "994687481"
  ],
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body AcdInstanceSelector true Describes the ACD instances to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceAcdInstanceCollection",
  "acdInstances": [
    {
      "kind": "via#workforceAcdInstance",
      "id": "975444541",
      "code": "ASPECT_ACD",
      "description": "Aspect ACD",
      "acdInstanceDescription": "Aspect ACD",
      "apFormulaId": "-9994561656.0",
      "model": "UNIFIEDIP",
      "site": "Site1",
      "stream": 20,
      "timeZoneId": "-9994561656.0",
      "unit": 30,
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK AcdInstanceCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

Adherences

Search Adherences

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "dateTimeRange": {
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  },
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "interval": 480,
  "perspectiveId": "-102147483315",
  "source": "AP"
};
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}/workforce/search/adherences',
{
  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}/workforce/search/adherences 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}/workforce/search/adherences

Retrieves a list of adherences that match the specified selector.

Body parameter

{
  "dateTimeRange": {
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  },
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "interval": 480,
  "perspectiveId": "-102147483315",
  "source": "AP"
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body AdherenceSelector true Describes the adherences to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceAdherenceCollection",
  "adherences": [
    {
      "kind": "via#workforceAdherence",
      "employeeId": "-9994561656.0",
      "actualSpans": [
        {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stateId": "-9994561656.0",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      ],
      "adherenceSpans": [
        {
          "actualStateId": "-9994561656.0",
          "isWithinScheduled": true,
          "scheduledStateId": "-9994561656.0",
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      ],
      "scheduledSpans": [
        {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stateId": "-9994561656.0",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      ],
      "startDateTime": "2010-12-31T13:18:35Z",
      "statistics": [
        {
          "actual": 1,
          "inAdherence": 1,
          "outScheduled": 1,
          "outUnscheduled": 1,
          "percent": 100,
          "scheduled": 1,
          "stateId": "-9994561656.0",
          "totalInOut": 1
        }
      ],
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "currentDateTime": "2010-12-31T13:13:51Z",
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK AdherenceCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

AgentFormulaSets

Search AgentFormulaSets

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "agentFormulaSetIds": [
    "994684565",
    "994687481"
  ],
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
};
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}/workforce/search/agentFormulaSets',
{
  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}/workforce/search/agentFormulaSets 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}/workforce/search/agentFormulaSets

Retrieves a list of agent formula sets that match the specified selector.

Body parameter

{
  "agentFormulaSetIds": [
    "994684565",
    "994687481"
  ],
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body AgentFormulaSetSelector true Describes the agent formula sets to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceAgentFormulaSetCollection",
  "agentFormulaSets": [
    {
      "kind": "via#workforceAgentFormulaSet",
      "id": "975444541",
      "code": "AP_FORMULA1",
      "description": "AP Agent Formula Set 1",
      "agentFormulaSetDescription": "AP Agent Formula Set 1",
      "aps": "QUEUE [\"*\", C6]",
      "model": "ALCATEL",
      "userDefined": false,
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK AgentFormulaSetCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

AgentProductivities

Search AgentProductivities

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeAgentProductivityAcdGroups": [
    {
      "acdGroupIdentifiers": [
        "289",
        "479"
      ],
      "acdInstanceId": "-9994561656"
    }
  ],
  "includeAgentProductivityStatistics": [
    "ScheduleCrossesMidnight",
    "NCH"
  ],
  "useAcdGroup": true
};
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}/workforce/search/agentProductivities',
{
  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}/workforce/search/agentProductivities 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}/workforce/search/agentProductivities

Retrieves a list of agent productivitites that match the specified selector.

Body parameter

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeAgentProductivityAcdGroups": [
    {
      "acdGroupIdentifiers": [
        "289",
        "479"
      ],
      "acdInstanceId": "-9994561656"
    }
  ],
  "includeAgentProductivityStatistics": [
    "ScheduleCrossesMidnight",
    "NCH"
  ],
  "useAcdGroup": true
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body AgentProductivitySelector true Describes the agent productivities to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceAgentProductivityCollection",
  "agentProductivities": [
    {
      "kind": "via#workforceAgentProductivity",
      "employeeId": "-9994561656.0",
      "agentProductivityNominalDate": [
        {
          "agentProductivityRecords": [
            {
              "agentProductivityAcdGroup": {
                "kind": "via#workforceAgentProductivityAcdGroup",
                "acdGroupIdentifiers": [
                  "289",
                  "479"
                ],
                "acdInstanceId": "-9994561656.0"
              },
              "agentProductivityStatistics": [
                {
                  "agentProductivityStatisticIdentifier": "ScheduleCrossesMidnight",
                  "value": "1"
                }
              ]
            }
          ],
          "nominalDate": "2000-12-30"
        }
      ]
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK AgentProductivityCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

AgentProductivityAcdGroups

Get AgentProductivityAcdGroups

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/agentProductivityAcdGroups \
  -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}/workforce/agentProductivityAcdGroups',
{
  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}/workforce/agentProductivityAcdGroups HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/agentProductivityAcdGroups

Retrieves all the agent productivity ACD groups.

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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#workforceAgentProductivityAcdGroupCollection",
  "agentProductivityAcdGroups": [
    {
      "kind": "via#workforceAgentProductivityAcdGroup",
      "acdGroupIdentifiers": [
        "289",
        "479"
      ],
      "acdInstanceId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK AgentProductivityAcdGroupCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeExtraFields

Get EmployeeExtraFields

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/employeeExtraFields \
  -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}/workforce/employeeExtraFields',
{
  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}/workforce/employeeExtraFields HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/employeeExtraFields

Retrieves all employee extra fields.

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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#workforceEmployeeExtraFieldCollection",
  "employeeExtraFields": [
    {
      "kind": "via#workforceEmployeeExtraField",
      "id": "975444541",
      "name": "ADDRESS_1",
      "description": "Address Line 1",
      "dataType": "String",
      "defaultFloat": 0.5,
      "defaultInteger": 0,
      "defaultString": "String value",
      "employeeExtraFieldDescription": "Address Line 1",
      "employeeExtraFieldName": "ADDRESS_1",
      "extraFieldTabId": "-9994561656.0",
      "pictureMask": "(000) 000-0000",
      "precision": 3,
      "sequenceNumber": 1,
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeExtraFieldCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeExtraFieldTabs

Get EmployeeExtraFieldTabs

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/employeeExtraFieldTabs \
  -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}/workforce/employeeExtraFieldTabs',
{
  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}/workforce/employeeExtraFieldTabs HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/employeeExtraFieldTabs

Retrieves all employee extra field tabs.

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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#workforceEmployeeExtraFieldTabCollection",
  "employeeExtraFieldTabs": [
    {
      "kind": "via#workforceEmployeeExtraFieldTab",
      "id": "975444541",
      "label": "Title 1",
      "sequenceNumber": 1,
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeExtraFieldTabCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeGroupClasses

Get EmployeeGroupClasses

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/employeeGroupClasses \
  -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}/workforce/employeeGroupClasses',
{
  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}/workforce/employeeGroupClasses HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/employeeGroupClasses

Retrieves all employee group classes.

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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#workforceEmployeeGroupClassCollection",
  "employeeGroupClasses": [
    {
      "kind": "via#workforceEmployeeGroupClass",
      "id": "975444541",
      "label": "Location",
      "employeeGroupTreeId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeGroupClassCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeGroups

Search EmployeeGroups

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeGroupIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
};
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}/workforce/search/employeeGroups',
{
  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}/workforce/search/employeeGroups 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}/workforce/search/employeeGroups

Retrieves a list of employee groups that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeGroupIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body EmployeeGroupSelector true Describes the employee groups to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceEmployeeGroupCollection",
  "employeeGroups": [
    {
      "kind": "via#workforceEmployeeGroup",
      "id": "975444541",
      "code": "CSV",
      "description": "Customer Service",
      "allowAssignment": true,
      "allowLeader": false,
      "employeeGroupClass": {
        "label": "Location",
        "employeeGroupClassId": "-9994561656.0"
      },
      "employeeGroupDescription": "Customer Service",
      "employeeGroupTreeId": "-9994561656.0",
      "parentEmployeeGroupId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeGroupCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

Employees

Put Employees

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "updateEmployeePairs": [
    {
      "currentEmployee": {
        "kind": "via#workforceEmployee",
        "id": "975444541",
        "acdLogins": [
          {
            "acdInstanceId": "-9994561656.0",
            "group": "ACD1",
            "login": "1920"
          }
        ],
        "active": true,
        "effectiveHireDate": "2000-12-30",
        "eMailAddress": "employeeemail@sample.com",
        "employeeGroups": [
          {
            "employeeGroupId": 975444541,
            "leader": false,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "employeeIdentifier": "TIG32",
        "extraFields": [
          {
            "extraFieldId": 975444541,
            "value": "ExtraData"
          }
        ],
        "firstName": "Jackie K.",
        "instantMessageAddress": "sip:employeeURI@sample.com",
        "lastName": "Abernathy",
        "memo": "Additional info relating to Employee",
        "seniority": "20050101002",
        "shortName": "JKAbernathy",
        "skills": [
          {
            "priority": 2,
            "skillId": 975444541,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "sortName": "ABERNATHY, JACKIE K.",
        "terminationDate": "2000-12-30",
        "timeZoneId": "-9994561656.0",
        "lastModifiedTime": "2010-12-31T13:18:35Z",
        "lastModifiedBy": "-9994561656.0"
      },
      "updateEmployee": {
        "kind": "via#workforceEmployee",
        "id": "975444541",
        "acdLogins": [
          {
            "acdInstanceId": "-9994561656.0",
            "group": "ACD1",
            "login": "1920"
          }
        ],
        "active": true,
        "effectiveHireDate": "2000-12-30",
        "eMailAddress": "employeeemail@sample.com",
        "employeeGroups": [
          {
            "employeeGroupId": 975444541,
            "leader": false,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "employeeIdentifier": "TIG32",
        "extraFields": [
          {
            "extraFieldId": 975444541,
            "value": "ExtraData"
          }
        ],
        "firstName": "Jackie K.",
        "instantMessageAddress": "sip:employeeURI@sample.com",
        "lastName": "Abernathy",
        "memo": "Additional info relating to Employee",
        "seniority": "20050101002",
        "shortName": "JKAbernathy",
        "skills": [
          {
            "priority": 2,
            "skillId": 975444541,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "sortName": "ABERNATHY, JACKIE K.",
        "terminationDate": "2000-12-30",
        "timeZoneId": "-9994561656.0",
        "lastModifiedTime": "2010-12-31T13:18:35Z",
        "lastModifiedBy": "-9994561656.0"
      }
    }
  ]
};
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}/workforce/employees',
{
  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}/workforce/employees 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}/workforce/employees

Updates a list of employees that match the specified updater.

Body parameter

{
  "updateEmployeePairs": [
    {
      "currentEmployee": {
        "kind": "via#workforceEmployee",
        "id": "975444541",
        "acdLogins": [
          {
            "acdInstanceId": "-9994561656.0",
            "group": "ACD1",
            "login": "1920"
          }
        ],
        "active": true,
        "effectiveHireDate": "2000-12-30",
        "eMailAddress": "employeeemail@sample.com",
        "employeeGroups": [
          {
            "employeeGroupId": 975444541,
            "leader": false,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "employeeIdentifier": "TIG32",
        "extraFields": [
          {
            "extraFieldId": 975444541,
            "value": "ExtraData"
          }
        ],
        "firstName": "Jackie K.",
        "instantMessageAddress": "sip:employeeURI@sample.com",
        "lastName": "Abernathy",
        "memo": "Additional info relating to Employee",
        "seniority": "20050101002",
        "shortName": "JKAbernathy",
        "skills": [
          {
            "priority": 2,
            "skillId": 975444541,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "sortName": "ABERNATHY, JACKIE K.",
        "terminationDate": "2000-12-30",
        "timeZoneId": "-9994561656.0",
        "lastModifiedTime": "2010-12-31T13:18:35Z",
        "lastModifiedBy": "-9994561656.0"
      },
      "updateEmployee": {
        "kind": "via#workforceEmployee",
        "id": "975444541",
        "acdLogins": [
          {
            "acdInstanceId": "-9994561656.0",
            "group": "ACD1",
            "login": "1920"
          }
        ],
        "active": true,
        "effectiveHireDate": "2000-12-30",
        "eMailAddress": "employeeemail@sample.com",
        "employeeGroups": [
          {
            "employeeGroupId": 975444541,
            "leader": false,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "employeeIdentifier": "TIG32",
        "extraFields": [
          {
            "extraFieldId": 975444541,
            "value": "ExtraData"
          }
        ],
        "firstName": "Jackie K.",
        "instantMessageAddress": "sip:employeeURI@sample.com",
        "lastName": "Abernathy",
        "memo": "Additional info relating to Employee",
        "seniority": "20050101002",
        "shortName": "JKAbernathy",
        "skills": [
          {
            "priority": 2,
            "skillId": 975444541,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "sortName": "ABERNATHY, JACKIE K.",
        "terminationDate": "2000-12-30",
        "timeZoneId": "-9994561656.0",
        "lastModifiedTime": "2010-12-31T13:18:35Z",
        "lastModifiedBy": "-9994561656.0"
      }
    }
  ]
}

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 EmployeeInfoUpdater true Describes the employees to update.

Example responses

200 Response

{
  "kind": "via#workforceSavedResponse"
}

Responses

Status Meaning Description Schema
200 OK OK SavedResponse
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
409 Conflict Conflict ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

Search Employees

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeAcdLogins": {
    "acdInstanceIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeEmployeeGroups": {
    "dateRanges": [
      {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "employeeGroupClassIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeExtraFields": {
    "extraFieldIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeSkills": {
    "dateRanges": [
      {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "skillIds": [
      "-9994561656",
      "-9994561254"
    ]
  }
};
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}/workforce/search/employees',
{
  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}/workforce/search/employees 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}/workforce/search/employees

Retrieves a list of employees that match the specified selector.

Body parameter

{
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeAcdLogins": {
    "acdInstanceIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeEmployeeGroups": {
    "dateRanges": [
      {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "employeeGroupClassIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeExtraFields": {
    "extraFieldIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeSkills": {
    "dateRanges": [
      {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "skillIds": [
      "-9994561656",
      "-9994561254"
    ]
  }
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body EmployeeDetailsSelector true Describes the employees to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceEmployeeCollection",
  "employees": [
    {
      "kind": "via#workforceEmployee",
      "id": "975444541",
      "acdLogins": [
        {
          "acdInstanceId": "-9994561656.0",
          "group": "ACD1",
          "login": "1920"
        }
      ],
      "active": true,
      "effectiveHireDate": "2000-12-30",
      "eMailAddress": "employeeemail@sample.com",
      "employeeGroups": [
        {
          "employeeGroupId": 975444541,
          "leader": false,
          "startDate": "2000-12-30",
          "stopDate": "2000-12-30"
        }
      ],
      "employeeIdentifier": "TIG32",
      "extraFields": [
        {
          "extraFieldId": 975444541,
          "value": "ExtraData"
        }
      ],
      "firstName": "Jackie K.",
      "instantMessageAddress": "sip:employeeURI@sample.com",
      "lastName": "Abernathy",
      "memo": "Additional info relating to Employee",
      "seniority": "20050101002",
      "shortName": "JKAbernathy",
      "skills": [
        {
          "priority": 2,
          "skillId": 975444541,
          "startDate": "2000-12-30",
          "stopDate": "2000-12-30"
        }
      ],
      "sortName": "ABERNATHY, JACKIE K.",
      "terminationDate": "2000-12-30",
      "timeZoneId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeSkills

Search EmployeeSkills

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeSkillIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
};
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}/workforce/search/employeeSkills',
{
  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}/workforce/search/employeeSkills 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}/workforce/search/employeeSkills

Retrieves a list of employee skills that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeSkillIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body EmployeeSkillSelector true Describes the employee skills to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceEmployeeSkillCollection",
  "employeeSkills": [
    {
      "kind": "via#workforceEmployeeSkill",
      "id": "975444541",
      "code": "CSV",
      "description": "Customer Service Skill",
      "employeeSkillDescription": "Customer Service Skill"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeSkillCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeStatuses

Put EmployeeStatuses

Code samples

# You can also use wget
curl -X PUT https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/employeeStatuses \
  -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": false,
  "employeeIds": [
    "-9994561656",
    "-9994561254"
  ],
  "employmentStatus": "Employed",
  "terminationDate": "2000-12-30"
};
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}/workforce/employeeStatuses',
{
  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}/workforce/employeeStatuses 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}/workforce/employeeStatuses

Updates the employment status and/or active status of one or more employees.

Body parameter

{
  "active": false,
  "employeeIds": [
    "-9994561656",
    "-9994561254"
  ],
  "employmentStatus": "Employed",
  "terminationDate": "2000-12-30"
}

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 EmployeeStatusUpdater true Describes the employment status and active state to apply to one or more employees.

Example responses

200 Response

{
  "kind": "via#workforceSavedResponse"
}

Responses

Status Meaning Description Schema
200 OK OK SavedResponse
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

EmployeeSuperGroups

Search EmployeeSuperGroups

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeSuperGroupIds": [
    "994684565",
    "994687481"
  ],
  "includeAssociatedEmployeeGroups": true,
  "partialCodes": [
    "BLU",
    "G"
  ]
};
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}/workforce/search/employeeSuperGroups',
{
  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}/workforce/search/employeeSuperGroups 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}/workforce/search/employeeSuperGroups

Retrieves a list of employee super groups that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeSuperGroupIds": [
    "994684565",
    "994687481"
  ],
  "includeAssociatedEmployeeGroups": true,
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body EmployeeSuperGroupSelector true Describes the employee super groups to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceEmployeeSuperGroupCollection",
  "employeeSuperGroups": [
    {
      "kind": "via#workforceEmployeeSuperGroup",
      "id": "975444541",
      "code": "NA",
      "description": "North America Employees",
      "employeeGroupIds": [
        "-9994561656",
        "-9994561254"
      ],
      "employeeSuperGroupDescription": "North America Employees",
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK EmployeeSuperGroupCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

ForecastGroups

Search ForecastGroups

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "forecastGroupIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
};
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}/workforce/search/forecastGroups',
{
  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}/workforce/search/forecastGroups 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}/workforce/search/forecastGroups

Retrieves a list of forecast groups that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "forecastGroupIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body ForecastGroupSelector true Describes the forecast groups to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceForecastGroupCollection",
  "forecastGroups": [
    {
      "kind": "via#workforceForecastGroup",
      "id": "975444541",
      "code": "CSV",
      "forecastGroupDescription": "CSV Forecast Group",
      "forecastGroupParentId": "-9994561656.0",
      "forecastGroupTreeId": "-9994561656.0",
      "timeZoneId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK ForecastGroupCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

IntraDayPerformanceSummaries

Search IntraDayPerformanceSummaries

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "dateTimeRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "forecastGroupIds": [
    "994684565",
    "994687481"
  ],
  "routingSetIds": [
    "994684565",
    "994687481"
  ],
  "staffGroupIds": [
    "994684565",
    "994687481"
  ]
};
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}/workforce/search/intraDayPerformanceSummaries',
{
  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}/workforce/search/intraDayPerformanceSummaries 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}/workforce/search/intraDayPerformanceSummaries

Retrieves a list of intra-day performance summaries that match the specified selector.

Body parameter

{
  "dateTimeRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "forecastGroupIds": [
    "994684565",
    "994687481"
  ],
  "routingSetIds": [
    "994684565",
    "994687481"
  ],
  "staffGroupIds": [
    "994684565",
    "994687481"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body IntraDayPerformanceSummarySelector true Describes the intra-day performance summaries to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceIntraDayPerformanceSummaryCollection",
  "intraDayPerformanceSummaries": [
    {
      "kind": "via#workforceIntraDayPerformanceSummary",
      "id": "975444541",
      "createdBy": "TESTUSER",
      "createdOnDateTime": "2010-12-31T13:13:51Z",
      "forecastGroups": [
        {
          "forecastGroupId": "975444541",
          "forecastGroups": [
            {}
          ],
          "multiSkill": false,
          "staffGroups": [
            {
              "multiSkill": false,
              "staffGroupId": "975444541",
              "staffGroups": [
                {}
              ],
              "startDateTime": "2010-12-31T13:13:51Z",
              "stopDateTime": "2010-12-31T13:13:51Z"
            }
          ],
          "startDateTime": "2010-12-31T13:13:51Z",
          "stopDateTime": "2010-12-31T13:13:51Z"
        }
      ],
      "routingSetId": "-9994561656.0",
      "startDateTime": "2010-12-31T13:13:51Z",
      "stopDateTime": "2010-12-31T13:13:51Z",
      "timeZoneId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK IntraDayPerformanceSummaryCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

PerspectivePurposes

Get PerspectivePurposes

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/perspectivePurposes \
  -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}/workforce/perspectivePurposes',
{
  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}/workforce/perspectivePurposes HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/perspectivePurposes

Retrieves a list of perspective purposes that match the name list.

Parameters

Name In Type Required Description
perspectivePurposeNames query array[string] false List of perspective purpose names to retrieve. If this parameter is omitted or the list is blank, all perspective purposes are returned.
startIndex query integer(int32) 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(int32) 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#workforcePerspectivePurposeCollection",
  "perspectivePurposes": [
    {
      "kind": "via#workforcePerspectivePurpose",
      "perspectiveId": "-9994561656.0",
      "perspectiveName": "ACD"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK PerspectivePurposeCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

Perspectives

Search Perspectives

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "perspectiveIds": [
    "994684565",
    "994687481"
  ]
};
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}/workforce/search/perspectives',
{
  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}/workforce/search/perspectives 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}/workforce/search/perspectives

Retrieves a list of perspectives that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "perspectiveIds": [
    "994684565",
    "994687481"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body PerspectiveSelector true Describes the perspectives to retrieve.

Example responses

200 Response

{
  "kind": "via#workforcePerspectiveCollection",
  "perspectives": [
    {
      "kind": "via#workforcePerspective",
      "id": "975444541",
      "code": "STAFF",
      "description": "Staffing Perspective",
      "perspectiveDescription": "Staffing Perspective",
      "states": [
        {
          "kind": "via#workforceState",
          "id": "975444541",
          "code": "PAID",
          "description": "Paid",
          "color": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "default": true,
          "fontColor": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "image": {
            "bmp": "Qk3WAAAAAAAAADYAAAAoAAAACgAAAAUAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAu7u8sLCxcXFzurq7tLS1w8PDu7u85eXm//////////96enxSUlVQUFJsbG5cXF50dHZvb3Hs7e3///////9V//n5+fv7+/v7+/v7+/n5+fv7+9LS03znxpzt1Kzw2/v/////////////////////////+f37bubBgOnJZ+W+///////////////////////////7//xM4LN46MZJ4LKz/w==",
            "png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACISURBVBhXY8AF6v8zME2+wrgViLsmX2bcDhXGBKv+MzADFUyefIWpbsplxikMxsbGrEBxZihmsQdiEFtFXt4QqLBp8hWGtEmXGcIZFOXkpivKyx8FYSV5+cVKcnK7gPQcoPhyFRUJUaAmCAAKeAMlIoAK5irKyvoC+SFAtjOIrSItLQNRxcAAAB7MI2nTJYkAAAAAAElFTkSuQmCC"
          },
          "isDefault": true,
          "stateDescription": "Paid"
        }
      ],
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK PerspectiveCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

RoutingSets

Search RoutingSets

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "includeDetails": false,
  "partialCodes": [
    "BLU",
    "G"
  ],
  "routingSetIds": [
    "994684565",
    "994687481"
  ]
};
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}/workforce/search/routingSets',
{
  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}/workforce/search/routingSets 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}/workforce/search/routingSets

Retrieves a list of routing sets that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "includeDetails": false,
  "partialCodes": [
    "BLU",
    "G"
  ],
  "routingSetIds": [
    "994684565",
    "994687481"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body RoutingSetSelector true Describes the routing sets to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceRoutingSetCollection",
  "routingSets": [
    {
      "kind": "via#workforceRoutingSet",
      "id": "975444541",
      "code": "CSV",
      "multiSkill": false,
      "routings": [
        {
          "forecastGroupId": "-9994561656.0",
          "priority": 1,
          "staffGroupId": "-9994561656.0"
        }
      ],
      "routingSetDescription": "CSV Routing Set",
      "serviceLevelGoalSeconds": 1.5,
      "staffGroupProperties": [
        {
          "staffGroupId": "-9994561656.0",
          "value": "STAFFADJUST"
        }
      ],
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK RoutingSetCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SegmentAudits

Search SegmentAudits

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "auditActions": {
    "add": true,
    "change": true,
    "delete": true
  },
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "durationRanges": [
    {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "fieldChanges": {
    "employee": true,
    "nominalDate": true,
    "segmentDefinition": true,
    "start": true,
    "stop": true
  },
  "includeDetailSegments": true,
  "includeGeneralSegments": true,
  "includeMemo": true,
  "overlapRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "segmentDefintionIds": [
    "994684565",
    "994687481"
  ],
  "startRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "stopRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "timeStampRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ]
};
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}/workforce/search/segmentAudits',
{
  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}/workforce/search/segmentAudits 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}/workforce/search/segmentAudits

Retrieves a list of segment audits that match the specified selector. If the selector matches a segment audit then all of the audit records associated with that segment will be included in the response.

Body parameter

{
  "auditActions": {
    "add": true,
    "change": true,
    "delete": true
  },
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "durationRanges": [
    {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "fieldChanges": {
    "employee": true,
    "nominalDate": true,
    "segmentDefinition": true,
    "start": true,
    "stop": true
  },
  "includeDetailSegments": true,
  "includeGeneralSegments": true,
  "includeMemo": true,
  "overlapRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "segmentDefintionIds": [
    "994684565",
    "994687481"
  ],
  "startRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "stopRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "timeStampRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SegmentAuditSelector true Describes the segment audits to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSegmentAuditCollection",
  "segmentAudits": [
    {
      "kind": "via#workforceScheduleSegmentAudit",
      "auditAction": "ADD",
      "segment": {
        "kind": "via#workforceScheduleSegment",
        "id": "975444541",
        "employeeId": "-9994561656.0",
        "memo": "Vacation",
        "nominalDate": "2018-04-29",
        "segmentDefinitionId": "-9994561656.0",
        "segmentType": "Detail",
        "startTime": "2008-09-15T15:53:00Z",
        "stopTime": "2008-09-15T15:53:00Z"
      },
      "segmentAuditType": "Detail",
      "sequenceNumber": 1698893,
      "timeStamp": "2008-09-15T15:53:00Z"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SegmentAuditCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SegmentCategories

Search SegmentCategories

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "segmentCategoryIds": [
    "-102147483259",
    "-102147483261"
  ]
};
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}/workforce/search/segmentCategories',
{
  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}/workforce/search/segmentCategories 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}/workforce/search/segmentCategories

Retrieves a list of segment categories that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "segmentCategoryIds": [
    "-102147483259",
    "-102147483261"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SegmentCategorySelector true Describes the segment categories to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSegmentCategoryCollection",
  "segmentCategories": [
    {
      "kind": "via#workforceSegmentCategory",
      "id": "975444541",
      "code": "CSV",
      "description": "Customer Service",
      "segmentCategoryDescription": "Customer Service",
      "segmentDefinitionIds": [
        "-9994561656",
        "-9994561254"
      ],
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SegmentCategoryCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SegmentDefinitions

Search SegmentDefinitions

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "includeStates": true,
  "partialCodes": [
    "BLU",
    "G"
  ],
  "segmentDefinitionIds": [
    "994684565",
    "994687481"
  ]
};
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}/workforce/search/segmentDefinitions',
{
  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}/workforce/search/segmentDefinitions 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}/workforce/search/segmentDefinitions

Retrieves a list of segment definitions that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "includeStates": true,
  "partialCodes": [
    "BLU",
    "G"
  ],
  "segmentDefinitionIds": [
    "994684565",
    "994687481"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SegmentDefinitionSelector true Describes the segment definitions to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSegmentDefinitionCollection",
  "segmentDefinitions": [
    {
      "kind": "via#workforceSegmentDefinition",
      "id": "975444541",
      "code": "BILL",
      "description": "Billing",
      "color": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "defaultDuration": 10,
      "fontColor": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "rank": 3,
      "requiresMemo": false,
      "segmentDefinitionDescription": "Billing",
      "states": [
        {
          "kind": "via#workforceSegmentDefinitionStateAssociation",
          "id": "975444541",
          "stateId": "-9994561656.0"
        }
      ],
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SegmentDefinitionCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

Segments

Search Segments

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "durationRanges": [
    {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeDetailSegments": true,
  "includeGeneralSegments": true,
  "overlapRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "segmentDefintionIds": [
    "994684565",
    "994687481"
  ],
  "startRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "stopRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ]
};
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}/workforce/search/segments',
{
  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}/workforce/search/segments 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}/workforce/search/segments

Retrieves a list of segments that match the specified selector.

Body parameter

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "durationRanges": [
    {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeDetailSegments": true,
  "includeGeneralSegments": true,
  "overlapRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "segmentDefintionIds": [
    "994684565",
    "994687481"
  ],
  "startRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "stopRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SegmentSelector true Describes the segments to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSegmentCollection",
  "segments": [
    {
      "kind": "via#workforceScheduleSegment",
      "id": "975444541",
      "employeeId": "-9994561656.0",
      "memo": "Vacation",
      "nominalDate": "2018-04-29",
      "segmentDefinitionId": "-9994561656.0",
      "segmentType": "Detail",
      "startTime": "2008-09-15T15:53:00Z",
      "stopTime": "2008-09-15T15:53:00Z"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SegmentCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SegmentSummaries

Search SegmentSummaries

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  }
};
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}/workforce/search/segmentSummaries',
{
  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}/workforce/search/segmentSummaries 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}/workforce/search/segmentSummaries

Retrieves a list of segment summaries that match the specified selector.

Body parameter

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  }
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SegmentSummarySelector true Describes the segment summaries to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSegmentSummaryCollection",
  "segmentSummaries": [
    {
      "kind": "via#workforceSegmentSummary",
      "employeeId": "-9994561656.0",
      "earliestStartTime": "2018-01-25T23:00:00Z",
      "generalSegmentDefinitionId": "-9994561656.0",
      "latestStopTime": "2018-01-25T23:00:00Z",
      "nominalDate": "2018-04-29",
      "workSegmentDefinitionId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SegmentSummaryCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

StaffAdjustmentSets

Search StaffAdjustmentSets

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "dateTimeRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "staffAdjustmentSetIds": [
    "994684565",
    "994687481"
  ]
};
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}/workforce/search/staffAdjustmentSets',
{
  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}/workforce/search/staffAdjustmentSets 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}/workforce/search/staffAdjustmentSets

Retrieves a list of staff adjustment sets that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "dateTimeRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "staffAdjustmentSetIds": [
    "994684565",
    "994687481"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body StaffAdjustmentSetSelector true Describes the staff adjustment sets to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceStaffAdjustmentSetCollection",
  "staffAdjustmentSets": [
    {
      "kind": "via#workforceStaffAdjustmentSet",
      "id": "975444541",
      "code": "test",
      "adjustments": {
        "adjustment": [
          {
            "amount": 100,
            "percent": 100,
            "startDateTime": "2010-12-31T13:18:35Z"
          }
        ],
        "forecastUnit": "ThirtyMinute"
      },
      "staffAdjustmentSetDescription": "Test Staff Adjustment Set",
      "staffGroupId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK StaffAdjustmentSetCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

StaffGroups

Search StaffGroups

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "staffGroupIds": [
    "994684565",
    "994687481"
  ]
};
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}/workforce/search/staffGroups',
{
  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}/workforce/search/staffGroups 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}/workforce/search/staffGroups

Retrieves a list of staff groups that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "staffGroupIds": [
    "994684565",
    "994687481"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body StaffGroupSelector true Describes the staff groups to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceStaffGroupCollection",
  "staffGroups": [
    {
      "kind": "via#workforceStaffGroup",
      "id": "975444541",
      "code": "CSV",
      "employeeGroupId": "-9994561656.0",
      "staffGroupDescription": "CSV Staff Group",
      "staffGroupParentId": "-9994561656.0",
      "staffGroupTreeId": "-9994561656.0",
      "superStateId": "-9994561656.0",
      "timeZoneId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK StaffGroupCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SuperStateHours

Search SuperStateHours

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "superStateIds": [
    "-979999997941",
    "-979999997940"
  ]
};
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}/workforce/search/superStateHours',
{
  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}/workforce/search/superStateHours 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}/workforce/search/superStateHours

Retrieves a list of superstate hours that match the specified selector.

Body parameter

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "superStateIds": [
    "-979999997941",
    "-979999997940"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SuperStateHourSelector true Describes the superstate hours to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSuperStateHourCollection",
  "superStateHours": [
    {
      "kind": "via#workforceSuperStateHour",
      "employeeId": "-9994561656.0",
      "minutes": 480,
      "nominalDate": "2018-04-29",
      "superStateId": "-9994561656.0",
      "lastModifiedTime": "2012-02-15T12:29:42Z"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SuperStateHourCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SuperStates

Search SuperStates

Code samples

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

const fetch = require('node-fetch');
const inputBody = {
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "superStateIds": [
    "-979999997941",
    "-979999997940"
  ]
};
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}/workforce/search/superStates',
{
  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}/workforce/search/superStates 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}/workforce/search/superStates

Retrieves a list of superstates that match the specified selector.

Body parameter

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "superStateIds": [
    "-979999997941",
    "-979999997940"
  ]
}

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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.
body body SuperStateSelector true Describes the superstates to retrieve.

Example responses

200 Response

{
  "kind": "via#workforceSuperStateCollection",
  "superStates": [
    {
      "kind": "via#workforceSuperState",
      "id": "975444541",
      "code": "PAY",
      "description": "Paid",
      "active": true,
      "stateIds": [
        "-9994561656",
        "-9994561254"
      ],
      "superStateDescription": "Paid",
      "lastModifiedTime": "2010-05-11T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SuperStateCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SystemInformation

Get SystemInformation

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/systemInformation \
  -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}/workforce/systemInformation',
{
  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}/workforce/systemInformation HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/systemInformation

Retrieves information about the state and configuration of the workforce component.

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

{
  "permanentCloseoutDate": "2018-04-29",
  "segmentCutoffDate": "2018-04-29"
}

Responses

Status Meaning Description Schema
200 OK OK SystemInformation
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

SystemParameters

Get SystemParameters

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/systemParameters \
  -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}/workforce/systemParameters',
{
  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}/workforce/systemParameters HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/systemParameters

Retrieves a list of system parameters that match the name list.

Parameters

Name In Type Required Description
systemParameterNames query array[string] false List of system parameter names to retrieve. If this parameter is omitted or the list is blank, all system parameters are returned.
startIndex query integer(int32) 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(int32) 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#workforceSystemParameterCollection",
  "systemParameters": [
    {
      "kind": "via#workforceSystemParameter",
      "systemParameterName": "FTE_DFN",
      "value": "41.40"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK SystemParameterCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

TimeZones

Get TimeZones

Code samples

# You can also use wget
curl -X GET https://orgId.via.aspect-cloud.net/via/v2/organizations/{orgId}/workforce/timeZones \
  -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}/workforce/timeZones',
{
  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}/workforce/timeZones HTTP/1.1
Host: orgid.via.aspect-cloud.net
Accept: application/json
Authorization: string
x-api-key: string

GET /via/v2/organizations/{orgId}/workforce/timeZones

Retrieves all the time zones.

Parameters

Name In Type Required Description
startIndex query integer(int32) 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(int32) 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#workforceTimeZoneCollection",
  "timeZones": [
    {
      "kind": "via#workforceTimeZone",
      "id": "975444541",
      "name": "Pacific Standard Time",
      "displayName": "(GMT- 08:00) Pacific Time",
      "memo": "Los Angeles, San Diego, Seattle",
      "timeZoneName": "US_PST"
    }
  ],
  "totalItems": 500
}

Responses

Status Meaning Description Schema
200 OK OK TimeZoneCollection
400 Bad Request Bad Request ErrorResponse
401 Unauthorized Unauthorized None
408 Request Timeout Request Timeout ErrorResponse
429 Too Many Requests Too Many Requests None
500 Internal Server Error Internal Server Error ErrorResponse

Response Headers

Status Header Type Format Description
200 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint
200 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
200 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets
429 RateLimit-Limit integer The number of requests remaining until rate limiting occurs for this endpoint, which will be zero while throttled
429 RateLimit-Remaining integer The maximum requests allowed in a one minute period before rate limiting occurs
429 RateLimit-Reset integer Number of seconds until the RateLimit-Remaining resets

Schemas

AcdInstance

{
  "kind": "via#workforceAcdInstance",
  "id": "975444541",
  "code": "ASPECT_ACD",
  "description": "Aspect ACD",
  "acdInstanceDescription": "Aspect ACD",
  "apFormulaId": "-9994561656.0",
  "model": "UNIFIEDIP",
  "site": "Site1",
  "stream": 20,
  "timeZoneId": "-9994561656.0",
  "unit": 30,
  "lastModifiedTime": "2010-12-31T13:13:51Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents an ACD instance.

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 ACD instance.
code string false none Unique identifier for this ACD instance, which can contain up to 30 characters.
description string false none This is a deprecated property.
acdInstanceDescription string false none Description for this ACD instance.
apFormulaId string false none Alvaria-generated unique identifier for the agent formula set that provides the agent productivity formula used by this ACD instance. The definition for this agent formula set can be retrieved with the via/v2/organizations/{orgId}/workforce/search/agentFormulaSets endpoint.
model string false none ACD model for this ACD instance.
site string false none ACD site for this ACD instance.
stream integer(int32) false none Stream for this ACD instance. Value must be between 1 and 1024.
timeZoneId string false none Alvaria-generated unique identifier for the time zone in which this ACD operates. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.
unit integer(int32) false none ACD reporting unit for this ACD instance, in minutes. Valid values are 15, 30, and 60.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

AcdInstanceCollection

{
  "kind": "via#workforceAcdInstanceCollection",
  "acdInstances": [
    {
      "kind": "via#workforceAcdInstance",
      "id": "975444541",
      "code": "ASPECT_ACD",
      "description": "Aspect ACD",
      "acdInstanceDescription": "Aspect ACD",
      "apFormulaId": "-9994561656.0",
      "model": "UNIFIEDIP",
      "site": "Site1",
      "stream": 20,
      "timeZoneId": "-9994561656.0",
      "unit": 30,
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for ACD instances. The result is a list of ACD instances that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching ACD instances. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
acdInstances [AcdInstance] false none List of ACD instances.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

AcdInstanceSelector

{
  "acdInstanceIds": [
    "994684565",
    "994687481"
  ],
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Selects a set of ACD instances by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
acdInstanceIds [string] false none ACD instances with a matching ID are selected.
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.

AcdLogin

{
  "acdInstanceId": "-9994561656.0",
  "group": "ACD1",
  "login": "1920"
}

Represents an ACD login.

Properties

Name Type Required Restrictions Description
acdInstanceId string true none Alvaria-generated unique identifier for the ACD instance on which this ACD login is configured. The definition for this ACD instance can be retrieved with the via/v2/organizations/{orgId}/workforce/search/acdInstances endpoint.
group string false none Code or other identifier of the ACD group that this employee logs in to on the ACD. This is used by the Agent Productivity feature.
login string true none Code or other identifier that the employee uses to log in to the ACD.

ActualSpan

{
  "startDateTime": "2010-12-31T13:18:35Z",
  "stateId": "-9994561656.0",
  "stopDateTime": "2010-12-31T13:18:35Z"
}

Represents an actual span.

Properties

Name Type Required Restrictions Description
startDateTime string(date-time) false none Start datetime for this actual span.
stateId string false none Alvaria-generated unique identifier for the state associated with this actual span. The definition for this state can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint which include states associated with each perspective.
stopDateTime string(date-time) false none Stop datetime for this actual span.

Adherence

{
  "kind": "via#workforceAdherence",
  "employeeId": "-9994561656.0",
  "actualSpans": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stateId": "-9994561656.0",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "adherenceSpans": [
    {
      "actualStateId": "-9994561656.0",
      "isWithinScheduled": true,
      "scheduledStateId": "-9994561656.0",
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "scheduledSpans": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stateId": "-9994561656.0",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "startDateTime": "2010-12-31T13:18:35Z",
  "statistics": [
    {
      "actual": 1,
      "inAdherence": 1,
      "outScheduled": 1,
      "outUnscheduled": 1,
      "percent": 100,
      "scheduled": 1,
      "stateId": "-9994561656.0",
      "totalInOut": 1
    }
  ],
  "stopDateTime": "2010-12-31T13:18:35Z"
}

Represents an adherence.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeId string false none Alvaria-generated unique identifier for the employee associated with this adherence. The definition for this employee can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
actualSpans [ActualSpan] false none List of actual spans associated with this adherence.
adherenceSpans [AdherenceSpan] false none List of adherence spans associated with this adherence.
scheduledSpans [ScheduledSpan] false none List of schedule spans associated with this adherence.
startDateTime string(date-time) false none Start datetime for this adherence.
statistics [StateStatistics] false none List of state statistics associated with this adherence.
stopDateTime string(date-time) false none Stop datetime for this adherence.

AdherenceCollection

{
  "kind": "via#workforceAdherenceCollection",
  "adherences": [
    {
      "kind": "via#workforceAdherence",
      "employeeId": "-9994561656.0",
      "actualSpans": [
        {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stateId": "-9994561656.0",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      ],
      "adherenceSpans": [
        {
          "actualStateId": "-9994561656.0",
          "isWithinScheduled": true,
          "scheduledStateId": "-9994561656.0",
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      ],
      "scheduledSpans": [
        {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stateId": "-9994561656.0",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      ],
      "startDateTime": "2010-12-31T13:18:35Z",
      "statistics": [
        {
          "actual": 1,
          "inAdherence": 1,
          "outScheduled": 1,
          "outUnscheduled": 1,
          "percent": 100,
          "scheduled": 1,
          "stateId": "-9994561656.0",
          "totalInOut": 1
        }
      ],
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "currentDateTime": "2010-12-31T13:13:51Z",
  "totalItems": 500
}

Result of a query for adherences. The result is a list of adherences that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching adherences. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
adherences [Adherence] false none List of adherences.
currentDateTime string(date-time) false none Current datetime adherences were retrieved.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

AdherenceSelector

{
  "dateTimeRange": {
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  },
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "interval": 480,
  "perspectiveId": "-102147483315",
  "source": "AP"
}

Selects a set of adherences.

Properties

Name Type Required Restrictions Description
dateTimeRange DateTimeRange true none Range of datetimes.
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.
interval integer(int32) false none Interval value (in minutes) determines whether spans of logged in time are combined to form events for calculating adherence statistics. The default setting is 480 minutes.
perspectiveId string false none Alvaria-generated unique identifier for the perspective. The definition for this perspective can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint. Adherences associated with perspective with a matching ID are selected. If the Source is RTA then the Perspective must be specified. If the Source is AP then the Perspective is optional but ignored if specified.
source string false none Adherences associated with this source will be selected.

Enumerated Values

Property Value
source AP
source RTA

AdherenceSpan

{
  "actualStateId": "-9994561656.0",
  "isWithinScheduled": true,
  "scheduledStateId": "-9994561656.0",
  "startDateTime": "2010-12-31T13:18:35Z",
  "stopDateTime": "2010-12-31T13:18:35Z"
}

Represents an adherence span.

Properties

Name Type Required Restrictions Description
actualStateId string false none Alvaria-generated unique identifier for the state associated with this adherence span. The definition for this state can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint which include states associated with each perspective.
isWithinScheduled boolean false none Indicates whether this adherence span is within scheduled.
scheduledStateId string false none Alvaria-generated unique identifier for the state associated with this adherence span. The definition for this state can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint which include states associated with each perspective.
startDateTime string(date-time) false none Start datetime for this adherence span.
stopDateTime string(date-time) false none Stop datetime for this adherence span.

AgentFormulaSet

{
  "kind": "via#workforceAgentFormulaSet",
  "id": "975444541",
  "code": "AP_FORMULA1",
  "description": "AP Agent Formula Set 1",
  "agentFormulaSetDescription": "AP Agent Formula Set 1",
  "aps": "QUEUE [\"*\", C6]",
  "model": "ALCATEL",
  "userDefined": false,
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents an agent formula set.
Collection of settings that defines how to extract contact volume, staffing and other data from ACD reports. Default formula sets are read-only; only user-created report sets can be modified.

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 agent formula set.
code string false none Unique identifier for this agent formula set, which can contain up to 30 characters.
description string false none This is a deprecated property.
agentFormulaSetDescription string false none Description for this agent formula set.
aps string false none Average position staffed formula for this agent formula set.
model string false none ACD model for this agent formula set.
userDefined boolean false none Indicates whether this agent formula set is user-defined.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

AgentFormulaSetCollection

{
  "kind": "via#workforceAgentFormulaSetCollection",
  "agentFormulaSets": [
    {
      "kind": "via#workforceAgentFormulaSet",
      "id": "975444541",
      "code": "AP_FORMULA1",
      "description": "AP Agent Formula Set 1",
      "agentFormulaSetDescription": "AP Agent Formula Set 1",
      "aps": "QUEUE [\"*\", C6]",
      "model": "ALCATEL",
      "userDefined": false,
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for agent formula sets. The result is a list of agent formula sets that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching agent formula sets. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
agentFormulaSets [AgentFormulaSet] false none List of agent formula sets.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

AgentFormulaSetSelector

{
  "agentFormulaSetIds": [
    "994684565",
    "994687481"
  ],
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Selects a set of agent formula sets by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
agentFormulaSetIds [string] false none Agent formula sets with a matching ID are selected.
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.

AgentProductivity

{
  "kind": "via#workforceAgentProductivity",
  "employeeId": "-9994561656.0",
  "agentProductivityNominalDate": [
    {
      "agentProductivityRecords": [
        {
          "agentProductivityAcdGroup": {
            "kind": "via#workforceAgentProductivityAcdGroup",
            "acdGroupIdentifiers": [
              "289",
              "479"
            ],
            "acdInstanceId": "-9994561656.0"
          },
          "agentProductivityStatistics": [
            {
              "agentProductivityStatisticIdentifier": "ScheduleCrossesMidnight",
              "value": "1"
            }
          ]
        }
      ],
      "nominalDate": "2000-12-30"
    }
  ]
}

Represents an agent productivity.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeId string false none Alvaria-generated unique identifier for the employee associated with this agent productivity. The definition for this employee can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
agentProductivityNominalDate [AgentProductivityNominalDate] false none List of agent productivity nominal dates associated with this agent productivity.

AgentProductivityAcdGroup

{
  "kind": "via#workforceAgentProductivityAcdGroup",
  "acdGroupIdentifiers": [
    "289",
    "479"
  ],
  "acdInstanceId": "-9994561656.0"
}

Represents an agent productivity ACD group.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
acdGroupIdentifiers [string] false none List of ACD instance group identifiers associated with this agent productivity ACD group.
acdInstanceId string false none Alvaria-generated unique identifier for the ACD instance associated with this agent productivity ACD group. The definition for this ACD instance can be retrieved with the via/v2/organizations/{orgId}/workforce/search/acdInstances endpoint.

AgentProductivityAcdGroupCollection

{
  "kind": "via#workforceAgentProductivityAcdGroupCollection",
  "agentProductivityAcdGroups": [
    {
      "kind": "via#workforceAgentProductivityAcdGroup",
      "acdGroupIdentifiers": [
        "289",
        "479"
      ],
      "acdInstanceId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for agent productivity ACD groups. The result is a list of agent productivity ACD groups that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching agent productivity ACD groups. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
agentProductivityAcdGroups [AgentProductivityAcdGroup] false none List of agent productivity ACD groups.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

AgentProductivityCollection

{
  "kind": "via#workforceAgentProductivityCollection",
  "agentProductivities": [
    {
      "kind": "via#workforceAgentProductivity",
      "employeeId": "-9994561656.0",
      "agentProductivityNominalDate": [
        {
          "agentProductivityRecords": [
            {
              "agentProductivityAcdGroup": {
                "kind": "via#workforceAgentProductivityAcdGroup",
                "acdGroupIdentifiers": [
                  "289",
                  "479"
                ],
                "acdInstanceId": "-9994561656.0"
              },
              "agentProductivityStatistics": [
                {
                  "agentProductivityStatisticIdentifier": "ScheduleCrossesMidnight",
                  "value": "1"
                }
              ]
            }
          ],
          "nominalDate": "2000-12-30"
        }
      ]
    }
  ],
  "totalItems": 500
}

Result of a query for agent productivities. The result is a list of agent productivities that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching agent productivities. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
agentProductivities [AgentProductivity] false none List of agent productivities.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

AgentProductivityNominalDate

{
  "agentProductivityRecords": [
    {
      "agentProductivityAcdGroup": {
        "kind": "via#workforceAgentProductivityAcdGroup",
        "acdGroupIdentifiers": [
          "289",
          "479"
        ],
        "acdInstanceId": "-9994561656.0"
      },
      "agentProductivityStatistics": [
        {
          "agentProductivityStatisticIdentifier": "ScheduleCrossesMidnight",
          "value": "1"
        }
      ]
    }
  ],
  "nominalDate": "2000-12-30"
}

Represents an agent productivity nominal date.

Properties

Name Type Required Restrictions Description
agentProductivityRecords [AgentProductivityRecord] false none List of agent productivity records associated with agent productivity nominal date.
nominalDate string(date) false none Nominal date of this agent productivity nominal date. The time and bias of this value is ignored.

AgentProductivityRecord

{
  "agentProductivityAcdGroup": {
    "kind": "via#workforceAgentProductivityAcdGroup",
    "acdGroupIdentifiers": [
      "289",
      "479"
    ],
    "acdInstanceId": "-9994561656.0"
  },
  "agentProductivityStatistics": [
    {
      "agentProductivityStatisticIdentifier": "ScheduleCrossesMidnight",
      "value": "1"
    }
  ]
}

Represents an agent productivity record.

Properties

Name Type Required Restrictions Description
agentProductivityAcdGroup AgentProductivityAcdGroup false none Represents an agent productivity ACD group.
agentProductivityStatistics [AgentProductivityStatistic] false none List of agent productivity statistics associated with this agent productivity record.

AgentProductivitySelector

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeAgentProductivityAcdGroups": [
    {
      "acdGroupIdentifiers": [
        "289",
        "479"
      ],
      "acdInstanceId": "-9994561656"
    }
  ],
  "includeAgentProductivityStatistics": [
    "ScheduleCrossesMidnight",
    "NCH"
  ],
  "useAcdGroup": true
}

Selects a set of agent productivities.

Properties

Name Type Required Restrictions Description
dateRanges [DateRange] true none Agent productivities with a nominal date within any specified range are selected.
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.
includeAgentProductivityAcdGroups [IncludeAgentProductivityAcdGroup] false none Agent productivity ACD group to group on when use ACD group is true.
includeAgentProductivityStatistics [string] false none Agent productivities associated with any agent productivity statics in the list will be included.
useAcdGroup boolean false none Determines whether to group by agent productivity ACD group.
Default is false.

AgentProductivityStatistic

{
  "agentProductivityStatisticIdentifier": "ScheduleCrossesMidnight",
  "value": "1"
}

Represents an agent productivity statistic.

Properties

Name Type Required Restrictions Description
agentProductivityStatisticIdentifier string false none Statistic identifier for this agent productivity statistic.
value string false none Agent productivity statistic value, expressed as a string.

Enumerated Values

Property Value
agentProductivityStatisticIdentifier ScheduleCrossesMidnight
agentProductivityStatisticIdentifier NCH
agentProductivityStatisticIdentifier NCHWeight
agentProductivityStatisticIdentifier NCHPerHour
agentProductivityStatisticIdentifier ATT
agentProductivityStatisticIdentifier NCH_ATT
agentProductivityStatisticIdentifier ACWT
agentProductivityStatisticIdentifier NCH_ACWT
agentProductivityStatisticIdentifier AHT
agentProductivityStatisticIdentifier NCH_AHT
agentProductivityStatisticIdentifier NOC
agentProductivityStatisticIdentifier NOCWeight
agentProductivityStatisticIdentifier NOCPerHour
agentProductivityStatisticIdentifier AOT
agentProductivityStatisticIdentifier NOC_AOT
agentProductivityStatisticIdentifier AOWT
agentProductivityStatisticIdentifier NOC_AOWT
agentProductivityStatisticIdentifier AOHT
agentProductivityStatisticIdentifier NOC_AOHT
agentProductivityStatisticIdentifier NSIOC
agentProductivityStatisticIdentifier NSIOCWeight
agentProductivityStatisticIdentifier NSIOCPerHour
agentProductivityStatisticIdentifier SIOATT
agentProductivityStatisticIdentifier NSIOC_SIOATT
agentProductivityStatisticIdentifier SIOAWT
agentProductivityStatisticIdentifier NSIOC_SIOAWT
agentProductivityStatisticIdentifier RPC
agentProductivityStatisticIdentifier RPCWeight
agentProductivityStatisticIdentifier RPCPerHour
agentProductivityStatisticIdentifier RPTT
agentProductivityStatisticIdentifier RPC_RPTT
agentProductivityStatisticIdentifier RPWT
agentProductivityStatisticIdentifier RPC_RPWT
agentProductivityStatisticIdentifier RPAHT
agentProductivityStatisticIdentifier NSIOC_RPAHT
agentProductivityStatisticIdentifier WPC
agentProductivityStatisticIdentifier WPCWeight
agentProductivityStatisticIdentifier WPCPerHour
agentProductivityStatisticIdentifier WPTT
agentProductivityStatisticIdentifier WPC_WPTT
agentProductivityStatisticIdentifier WPWT
agentProductivityStatisticIdentifier WPC_WPWT
agentProductivityStatisticIdentifier WPAHT
agentProductivityStatisticIdentifier NSIOC_WPAHT
agentProductivityStatisticIdentifier EarlyLateStart
agentProductivityStatisticIdentifier EarlyLateStop
agentProductivityStatisticIdentifier Scheduled
agentProductivityStatisticIdentifier SignedIn
agentProductivityStatisticIdentifier Compliance
agentProductivityStatisticIdentifier Idle
agentProductivityStatisticIdentifier AVL_TIME
agentProductivityStatisticIdentifier UNAVL_TIME
agentProductivityStatisticIdentifier PluggedInPercent
agentProductivityStatisticIdentifier SignedInPercent
agentProductivityStatisticIdentifier CompliancePercent
agentProductivityStatisticIdentifier RPC_RPAHT
agentProductivityStatisticIdentifier WPC_WPAHT
agentProductivityStatisticIdentifier SIOAHT

Color

{
  "htmlColor": "800080",
  "windowsColor": 16777215
}

Specific color, which includes a Windows color value and an RGB hexadecimal representation.

Properties

Name Type Required Restrictions Description
htmlColor string false none Color as an RGB hexadecimal string, which a browser can use to display the color.
windowsColor integer(int32) false none Color as a Windows color. This may be a pallet index or an RGB value.

DateRange

{
  "startDate": "2000-12-30",
  "stopDate": "2000-12-30"
}

Range of dates.

Properties

Name Type Required Restrictions Description
startDate string(date) true none Start date of the range. Must be less than or equal to stop date.
stopDate string(date) true none Stop date of the range.

DateTimeRange

{
  "startDateTime": "2010-12-31T13:18:35Z",
  "stopDateTime": "2010-12-31T13:18:35Z"
}

Range of datetimes.

Properties

Name Type Required Restrictions Description
startDateTime string(date-time) true none Start datetime of the range. Must be less than or equal to stop datetime.
stopDateTime string(date-time) true none Stop datetime of the range.

DurationRange

{
  "maximumDuration": "15:02:00",
  "minimumDuration": "15:01:00"
}

Range of durations.

Properties

Name Type Required Restrictions Description
maximumDuration string true none Maximum duration in the range.
minimumDuration string true none Minimum duration in the range. Must be less than or equal to maximum duration.

Employee

{
  "kind": "via#workforceEmployee",
  "id": "975444541",
  "acdLogins": [
    {
      "acdInstanceId": "-9994561656.0",
      "group": "ACD1",
      "login": "1920"
    }
  ],
  "active": true,
  "effectiveHireDate": "2000-12-30",
  "eMailAddress": "employeeemail@sample.com",
  "employeeGroups": [
    {
      "employeeGroupId": 975444541,
      "leader": false,
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeIdentifier": "TIG32",
  "extraFields": [
    {
      "extraFieldId": 975444541,
      "value": "ExtraData"
    }
  ],
  "firstName": "Jackie K.",
  "instantMessageAddress": "sip:employeeURI@sample.com",
  "lastName": "Abernathy",
  "memo": "Additional info relating to Employee",
  "seniority": "20050101002",
  "shortName": "JKAbernathy",
  "skills": [
    {
      "priority": 2,
      "skillId": 975444541,
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "sortName": "ABERNATHY, JACKIE K.",
  "terminationDate": "2000-12-30",
  "timeZoneId": "-9994561656.0",
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents a Workforce Management employee.

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 employee.
acdLogins [AcdLogin] false none List of the ACD logins associated with this employee.
active boolean false none Indicates whether this employee is active.
effectiveHireDate string(date) true none Hire date for this employee.
eMailAddress string false none Email address for this employee.
employeeGroups [EmployeeGroupAssignment] false none List of employee groups to which the employee is assigned.
employeeIdentifier string true none Unique, human-readable identification code for this employee. The maximum length is 10.
extraFields [ExtraFieldValue] false none List of extra field values associated with the employee.
firstName string true none First name for this employee.
instantMessageAddress string false none Instant message address for this employee.
lastName string true none Last name for this employee.
memo string false none Additional text associated with the employee.
seniority string false none Employee ranking, up to 12 characters, to use for operations in which
Employees are processed sequentially, such as automatic assignment and
preference-based scheduling. These values default to the employee record
creation date in the format yyyymmdd000, where yyyymmdd is the numeric
hire date (year, month, and day). A part, or all, of this value can be
modified when creating a user.
shortName string true none Shorter version of the employee name.
skills [EmployeeSkillAssociation] false none List of skills associated with the employee.
sortName string true none Alternative representation of the employee name that can be used for sorting purposes.
terminationDate string(date) false none Termination date for this employee. This value may be null and a value of "3268-12-12" signifies a null value. This property will not apply when updating employee but is required for the current employee.
timeZoneId string true none Alvaria-generated unique identifier for the time zone associated with this employee. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified. This property will not apply when updating employee.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity. This property will not apply when updating employee.

EmployeeCollection

{
  "kind": "via#workforceEmployeeCollection",
  "employees": [
    {
      "kind": "via#workforceEmployee",
      "id": "975444541",
      "acdLogins": [
        {
          "acdInstanceId": "-9994561656.0",
          "group": "ACD1",
          "login": "1920"
        }
      ],
      "active": true,
      "effectiveHireDate": "2000-12-30",
      "eMailAddress": "employeeemail@sample.com",
      "employeeGroups": [
        {
          "employeeGroupId": 975444541,
          "leader": false,
          "startDate": "2000-12-30",
          "stopDate": "2000-12-30"
        }
      ],
      "employeeIdentifier": "TIG32",
      "extraFields": [
        {
          "extraFieldId": 975444541,
          "value": "ExtraData"
        }
      ],
      "firstName": "Jackie K.",
      "instantMessageAddress": "sip:employeeURI@sample.com",
      "lastName": "Abernathy",
      "memo": "Additional info relating to Employee",
      "seniority": "20050101002",
      "shortName": "JKAbernathy",
      "skills": [
        {
          "priority": 2,
          "skillId": 975444541,
          "startDate": "2000-12-30",
          "stopDate": "2000-12-30"
        }
      ],
      "sortName": "ABERNATHY, JACKIE K.",
      "terminationDate": "2000-12-30",
      "timeZoneId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for employees. The result is a list of employees that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching employees. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employees [Employee] false none List of employees.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeDetailsSelector

{
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeAcdLogins": {
    "acdInstanceIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeEmployeeGroups": {
    "dateRanges": [
      {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "employeeGroupClassIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeExtraFields": {
    "extraFieldIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeSkills": {
    "dateRanges": [
      {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "skillIds": [
      "-9994561656",
      "-9994561254"
    ]
  }
}

Selects a set of employee records using an EmployeeSelector and determines how to control which details of the employee record are included in the result.

Properties

Name Type Required Restrictions Description
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.
includeAcdLogins IncludeAcdLogins false none Determines which ACD logins to include with the requested employee records.
includeEmployeeGroups IncludeEmployeeGroups false none Determines which employee group assignments to include with an employee record.
Assignments selected by includeEmployeeGroups.employeeGroup OR by employeeGroupClass are included, but if neither parameters are specified, then all employee group assignments are included.
The assignments selected includeEmployeeGroups.employeeGroup OR by employeeGroupClass are reduced to the assignments that intersect a date range within dateRanges.
dateRanges restricts the group associations by startDate and stopDate (inclusive). Any group associations with a range defined by startDate and stopDate that overlaps any supplied ranges will be included in the response.
includeExtraFields IncludeExtraFields false none Determines which extra field values to include with a requested employee record.
includeSkills IncludeSkills false none Determines which employee skill associations to include with an employee record.
Skill associations selected by includeSkills.skill are included, but if includeSkills.skill is not specified, then all employee skill associations are included.
dateRanges restricts the skill associations by startDate and stopDate (inclusive). Any skill associations with a range defined by startDate and stopDate that overlaps any supplied ranges will be included in the response.

EmployeeExtraField

{
  "kind": "via#workforceEmployeeExtraField",
  "id": "975444541",
  "name": "ADDRESS_1",
  "description": "Address Line 1",
  "dataType": "String",
  "defaultFloat": 0.5,
  "defaultInteger": 0,
  "defaultString": "String value",
  "employeeExtraFieldDescription": "Address Line 1",
  "employeeExtraFieldName": "ADDRESS_1",
  "extraFieldTabId": "-9994561656.0",
  "pictureMask": "(000) 000-0000",
  "precision": 3,
  "sequenceNumber": 1,
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents an employee extra field.

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 employee extra field.
name string false none This is a deprecated property.
description string false none This is a deprecated property.
dataType string false none Data type of an extra field.
defaultFloat number(double) false none Default floating point value for an extra field.
If the data type is not Float, then this property will be null.
If the data type is Float, then this field has a floating-point value.
defaultInteger integer(int32) false none Default integer value for an Integer, Date, Time, or DateTime extra field.
If the data type is not Integer, Date, Time, or DateTime, then this property will be null.
If the data type is Integer, then this field will have an integer value.
If the data type is Date, then this field will have an integer value that is the number of days since 1899-12-30.
If the data type is Time, then this field will have an integer value that is the number of minutes from midnight. This value is greater than or equal to 0 and less than 1440.
If the data type is DateTime, then this field will have an integer value that is the number of minutes since 1899-12-30T00:00:00Z.
defaultString string false none Default value for a string or boolean extra field.
If the data type is not String or Boolean, then this property will be null.
If the data type is String, this field will contain the default string, which can be blank.
If the data type is Boolean, then this field will contain either 'T' or 'F'.
employeeExtraFieldDescription string false none Description for this employee extra field.
employeeExtraFieldName string false none Unique identifier for this employee extra field, which can contain up to 30 characters.
extraFieldTabId string false none Alvaria-generated unique identifier for the employee extra field tab to which this employee extra field belongs. The definition for this employee extra field tab can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeExtraFieldTabs endpoint.
pictureMask string false none Input mask of extra field. This can be used as a hint to help end users properly format a string extra field value.
If the data type is not String, then this property will be null.
See http://docwiki.embarcadero.com/Libraries/XE2/en/System.MaskUtils.TEditMask for valid picture mask formats.
precision integer(int32) false none Maximum precision of a floating point number.
This controls how many digits can appear to the right of a floating point number decimal point.
The valid range is 1 to 4.
If the data type is not Float, then this property will be null.
sequenceNumber integer(int32) false none Sequence Number for an extra field. This value controls the order in which extra fields appear within an extra field tab when displayed to an end user.
The value must be greater than zero.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

Enumerated Values

Property Value
dataType String
dataType Integer
dataType Float
dataType Date
dataType Time
dataType DateTime
dataType Boolean

EmployeeExtraFieldCollection

{
  "kind": "via#workforceEmployeeExtraFieldCollection",
  "employeeExtraFields": [
    {
      "kind": "via#workforceEmployeeExtraField",
      "id": "975444541",
      "name": "ADDRESS_1",
      "description": "Address Line 1",
      "dataType": "String",
      "defaultFloat": 0.5,
      "defaultInteger": 0,
      "defaultString": "String value",
      "employeeExtraFieldDescription": "Address Line 1",
      "employeeExtraFieldName": "ADDRESS_1",
      "extraFieldTabId": "-9994561656.0",
      "pictureMask": "(000) 000-0000",
      "precision": 3,
      "sequenceNumber": 1,
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for employee extra fields. The result is a list of employee extra fields that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching employee extra fields. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeExtraFields [EmployeeExtraField] false none List of employee extra fields.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeExtraFieldTab

{
  "kind": "via#workforceEmployeeExtraFieldTab",
  "id": "975444541",
  "label": "Title 1",
  "sequenceNumber": 1,
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents an employee extra field tab.

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 employee extra field tab.
label string false none Employee extra fields tab title.
sequenceNumber integer(int32) false none Employee extra fields tab sequence number, which defines the order in which extra field tabs are displayed to an end user.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

EmployeeExtraFieldTabCollection

{
  "kind": "via#workforceEmployeeExtraFieldTabCollection",
  "employeeExtraFieldTabs": [
    {
      "kind": "via#workforceEmployeeExtraFieldTab",
      "id": "975444541",
      "label": "Title 1",
      "sequenceNumber": 1,
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for employee extra field tabs. The result is a list of employee extra field tabs that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching employee extra field tabs. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeExtraFieldTabs [EmployeeExtraFieldTab] false none List of employee extra field tabs.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeFilter

{
  "employeeGroupFilter": {
    "date": "2000-12-30",
    "employeeGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "extraFieldFilter": {
    "extraFieldId": 2387932847,
    "operator": "EqualTo",
    "value": "EMP001"
  },
  "hireDateFilter": {
    "startDate": "2000-12-30",
    "stopDate": "2000-12-30"
  },
  "segmentFilter": {
    "duration": {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    },
    "segmentDefinitionId": 66898,
    "start": {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    },
    "stop": {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  },
  "skillFilter": {
    "date": "2000-12-30",
    "priorityRange": {
      "maximum": 1,
      "minimum": 1
    },
    "skillId": 1489356
  },
  "termDateFilter": {
    "startDate": "2000-12-30",
    "stopDate": "2000-12-30"
  }
}

Standard used for filtering employees.

Properties

Name Type Required Restrictions Description
employeeGroupFilter EmployeeFilterEmployeeGroupFilter false none Employee filter criteria of employee group IDs and date to determine
which employees match the work an employee can perform.
extraFieldFilter ExtraFieldComparison false none Extra field comparison can be used to filter data associated with extra fields.
The comparison uses the following three properties together:
* ExtraFieldId - the specific extra field
* Value - the value to compare
* Operator - the definition of how to compare the specific extra field value
NOTE: If ALL three are not supplied the resulting behavior is undefined.

The following table shows each of the extra field data types and the comparison operators
supported for that type - if it is not supported, the resulting behavior is undefined.

For operators "EqualTo" and "NotEqualTo":
DataType Valid Values
-------- ------------
String Any string
Boolean "true", "false", 1, or 0

For all operators ("LessThan", "LessThanEqualTo", "EqualTo", "NotEqualTo",
"GreaterThanEqualTo", "GreaterThan"):
DataType Valid Values
-------- ------------
Integer Any number with no decimals
Float Any number, with or without decimals
Date A string in the format yyyy-mm-dd
Time A string in the format hh:mm[:ss]
DateTime A string in the format yyyy-mm-dd[Thh:mm[:ss][Z
hireDateFilter DateRange false none Range of dates.
segmentFilter EmployeeFilterSegmentFilter false none Employee Filter criteria based on a specific segment ID, segment start date range, segment stop date range, and segment duration.
* duration filters employees with detail segments by the detail segment duration (inclusive). Any employee with a detail segment with a duration defined by its startTime and stopTime between minimumDuration and maximumDuration of supplied range will be included in the response.
* start filters employees with detail segments by the detail segment startTime (inclusive). Any employee with a detail segment with a startTime between startDateTime and stopDateTime of supplied range will be included in the response.
* stop filters employees with detail segments by the detail segment stopTime (inclusive). Any employee with a detail segment with a stopTime between startDateTime and stopDateTime of supplied range will be included in the response.
skillFilter EmployeeFilterSkillFilter false none Employee Filter criteria based on a specific employee skill ID, date, and priority range.
* priorityRange filters employees by skill assignment priority (inclusive). Any employee with a skill of the requested id with a priority between the minimum and maximum of supplied range will be included in the response.
termDateFilter DateRange false none Range of dates.

EmployeeFilterEmployeeGroupFilter

{
  "date": "2000-12-30",
  "employeeGroupIds": [
    "-9994561656",
    "-9994561254"
  ]
}

Employee filter criteria of employee group IDs and date to determine which employees match the work an employee can perform.

Properties

Name Type Required Restrictions Description
date string(date) false none Date used to test an employee assignment to employee groups.
employeeGroupIds [string] false none List of Alvaria-generated unique identifiers for the employee groups. The definition for these employee groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeGroups endpoint.
List of employee group ids for employee filtering. This is a system identifier for a resource, not the identifier exposed to end users in the software.
Only employees assigned to an employee group in this list will be selected by the employee filter.

EmployeeFilterSegmentFilter

{
  "duration": {
    "maximumDuration": "15:02:00",
    "minimumDuration": "15:01:00"
  },
  "segmentDefinitionId": 66898,
  "start": {
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  },
  "stop": {
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  }
}

Employee Filter criteria based on a specific segment ID, segment start date range, segment stop date range, and segment duration.

Properties

Name Type Required Restrictions Description
duration DurationRange false none Range of durations.
segmentDefinitionId number(double) true none Alvaria-generated unique identifier for the segment definition used by this filter criteria. If supplied, only employees with a segment associated with this segment definition (and matching the other criteria) will be selected. The definition for a segment definition can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segments endpoint.
start DateTimeRange false none Range of datetimes.
stop DateTimeRange false none Range of datetimes.

EmployeeFilterSkillFilter

{
  "date": "2000-12-30",
  "priorityRange": {
    "maximum": 1,
    "minimum": 1
  },
  "skillId": 1489356
}

Employee Filter criteria based on a specific employee skill ID, date, and priority range.

Properties

Name Type Required Restrictions Description
date string(date) false none Date for which an employee possessed the defined skill.
priorityRange IntegerRange false none Range of integer values.
skillId number(double) false none Alvaria-generated unique identifier for the employee skill used by this filter criteria. If supplied, only employees with this employee skill (and matching the other criteria) will be selected. The definition for a employee skill can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeSkills endpoint.

EmployeeGroup

{
  "kind": "via#workforceEmployeeGroup",
  "id": "975444541",
  "code": "CSV",
  "description": "Customer Service",
  "allowAssignment": true,
  "allowLeader": false,
  "employeeGroupClass": {
    "label": "Location",
    "employeeGroupClassId": "-9994561656.0"
  },
  "employeeGroupDescription": "Customer Service",
  "employeeGroupTreeId": "-9994561656.0",
  "parentEmployeeGroupId": "-9994561656.0",
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents an employee group. Employee group is a division or category created to organize employee information. Employee groups are points on an employee tree.

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 employee group.
code string false none Unique identifier for this employee group, which can contain up to 30 characters.
description string false none This is a deprecated property.
allowAssignment boolean false none Indicates whether employees can be assigned directly to this group, as opposed to its child groups only.
allowLeader boolean false none Indicates whether employees can be designated as leaders in this group.
The leader property is useful in identifying certain employees in a group.
employeeGroupClass EmployeeGroupClassAssociation false none Represents an employee group class association.
Employee group category used for reporting purposes. The category designates the kind of group within the employee tree.
employeeGroupDescription string false none Description for this employee group.
employeeGroupTreeId string false none Alvaria-generated unique identifier for the employee group that is the root of the tree to which this employee group belongs. If this employee group is the root of a tree then this property will hold the same value as the id property.
parentEmployeeGroupId string false none Alvaria-generated unique identifier for the employee group that is the parent of this employee group. If this employee group is the root of a tree then this property has no value.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

EmployeeGroupAssignment

{
  "employeeGroupId": 975444541,
  "leader": false,
  "startDate": "2000-12-30",
  "stopDate": "2000-12-30"
}

Represents an employee assignment to an employee group.

Properties

Name Type Required Restrictions Description
employeeGroupId number(double) true none Alvaria-generated unique identifier for the employee group to which this employee is assigned. The definition for this employee group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeGroups endpoint.
leader boolean false none Indicates whether an employee is a leader in the employee group.
startDate string(date) true none First day this employee is assigned to this employee group.
stopDate string(date) false none Last day this employee is assigned to this employee group. This value may be null and a value of "3268-12-12" signifies a null value. This property will not apply when adding or updating employee group but is required for the current employee.

EmployeeGroupClass

{
  "kind": "via#workforceEmployeeGroupClass",
  "id": "975444541",
  "label": "Location",
  "employeeGroupTreeId": "-9994561656.0"
}

Represents an employee group class. Classes categorize employee groups for reporting purposes; they designate the kind of group within the employee tree. Some examples of possible user-defined classes are: Location, Work Team, and Job Type.

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 employee group class.
label string false none Label or title of the employee group class, which can contain up to 30 characters.
employeeGroupTreeId string false none Alvaria-generated unique identifier for the employee group that is associated with this employee group class. The definition for this employee group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeGroups endpoint.

EmployeeGroupClassAssociation

{
  "label": "Location",
  "employeeGroupClassId": "-9994561656.0"
}

Represents an employee group class association. Employee group category used for reporting purposes. The category designates the kind of group within the employee tree.

Properties

Name Type Required Restrictions Description
label string false none Label or title of the employee group class, which can contain up to 30 characters.
employeeGroupClassId string false none Alvaria-generated unique identifier for the employee group class that is assigned to this employee group class. The definition for this employee group class can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeGroupClasses endpoint.

EmployeeGroupClassCollection

{
  "kind": "via#workforceEmployeeGroupClassCollection",
  "employeeGroupClasses": [
    {
      "kind": "via#workforceEmployeeGroupClass",
      "id": "975444541",
      "label": "Location",
      "employeeGroupTreeId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for employee group classes. The result is a list of employee group classes that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching employee group classes. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeGroupClasses [EmployeeGroupClass] false none List of employee group classes.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeGroupCollection

{
  "kind": "via#workforceEmployeeGroupCollection",
  "employeeGroups": [
    {
      "kind": "via#workforceEmployeeGroup",
      "id": "975444541",
      "code": "CSV",
      "description": "Customer Service",
      "allowAssignment": true,
      "allowLeader": false,
      "employeeGroupClass": {
        "label": "Location",
        "employeeGroupClassId": "-9994561656.0"
      },
      "employeeGroupDescription": "Customer Service",
      "employeeGroupTreeId": "-9994561656.0",
      "parentEmployeeGroupId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for employee groups. The result is a list of employee groups that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching employee groups. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeGroups [EmployeeGroup] false none List of employee groups.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeGroupSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeGroupIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Selects a set of employee groups by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
employeeGroupIds [string] false none Employee groups with a matching ID are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.

EmployeeInfoUpdatePair

{
  "currentEmployee": {
    "kind": "via#workforceEmployee",
    "id": "975444541",
    "acdLogins": [
      {
        "acdInstanceId": "-9994561656.0",
        "group": "ACD1",
        "login": "1920"
      }
    ],
    "active": true,
    "effectiveHireDate": "2000-12-30",
    "eMailAddress": "employeeemail@sample.com",
    "employeeGroups": [
      {
        "employeeGroupId": 975444541,
        "leader": false,
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "employeeIdentifier": "TIG32",
    "extraFields": [
      {
        "extraFieldId": 975444541,
        "value": "ExtraData"
      }
    ],
    "firstName": "Jackie K.",
    "instantMessageAddress": "sip:employeeURI@sample.com",
    "lastName": "Abernathy",
    "memo": "Additional info relating to Employee",
    "seniority": "20050101002",
    "shortName": "JKAbernathy",
    "skills": [
      {
        "priority": 2,
        "skillId": 975444541,
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "sortName": "ABERNATHY, JACKIE K.",
    "terminationDate": "2000-12-30",
    "timeZoneId": "-9994561656.0",
    "lastModifiedTime": "2010-12-31T13:18:35Z",
    "lastModifiedBy": "-9994561656.0"
  },
  "updateEmployee": {
    "kind": "via#workforceEmployee",
    "id": "975444541",
    "acdLogins": [
      {
        "acdInstanceId": "-9994561656.0",
        "group": "ACD1",
        "login": "1920"
      }
    ],
    "active": true,
    "effectiveHireDate": "2000-12-30",
    "eMailAddress": "employeeemail@sample.com",
    "employeeGroups": [
      {
        "employeeGroupId": 975444541,
        "leader": false,
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "employeeIdentifier": "TIG32",
    "extraFields": [
      {
        "extraFieldId": 975444541,
        "value": "ExtraData"
      }
    ],
    "firstName": "Jackie K.",
    "instantMessageAddress": "sip:employeeURI@sample.com",
    "lastName": "Abernathy",
    "memo": "Additional info relating to Employee",
    "seniority": "20050101002",
    "shortName": "JKAbernathy",
    "skills": [
      {
        "priority": 2,
        "skillId": 975444541,
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    ],
    "sortName": "ABERNATHY, JACKIE K.",
    "terminationDate": "2000-12-30",
    "timeZoneId": "-9994561656.0",
    "lastModifiedTime": "2010-12-31T13:18:35Z",
    "lastModifiedBy": "-9994561656.0"
  }
}

Represents a current and update employee pair.

Properties

Name Type Required Restrictions Description
currentEmployee Employee true none Represents a Workforce Management employee.
updateEmployee Employee true none Represents a Workforce Management employee.

EmployeeInfoUpdater

{
  "updateEmployeePairs": [
    {
      "currentEmployee": {
        "kind": "via#workforceEmployee",
        "id": "975444541",
        "acdLogins": [
          {
            "acdInstanceId": "-9994561656.0",
            "group": "ACD1",
            "login": "1920"
          }
        ],
        "active": true,
        "effectiveHireDate": "2000-12-30",
        "eMailAddress": "employeeemail@sample.com",
        "employeeGroups": [
          {
            "employeeGroupId": 975444541,
            "leader": false,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "employeeIdentifier": "TIG32",
        "extraFields": [
          {
            "extraFieldId": 975444541,
            "value": "ExtraData"
          }
        ],
        "firstName": "Jackie K.",
        "instantMessageAddress": "sip:employeeURI@sample.com",
        "lastName": "Abernathy",
        "memo": "Additional info relating to Employee",
        "seniority": "20050101002",
        "shortName": "JKAbernathy",
        "skills": [
          {
            "priority": 2,
            "skillId": 975444541,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "sortName": "ABERNATHY, JACKIE K.",
        "terminationDate": "2000-12-30",
        "timeZoneId": "-9994561656.0",
        "lastModifiedTime": "2010-12-31T13:18:35Z",
        "lastModifiedBy": "-9994561656.0"
      },
      "updateEmployee": {
        "kind": "via#workforceEmployee",
        "id": "975444541",
        "acdLogins": [
          {
            "acdInstanceId": "-9994561656.0",
            "group": "ACD1",
            "login": "1920"
          }
        ],
        "active": true,
        "effectiveHireDate": "2000-12-30",
        "eMailAddress": "employeeemail@sample.com",
        "employeeGroups": [
          {
            "employeeGroupId": 975444541,
            "leader": false,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "employeeIdentifier": "TIG32",
        "extraFields": [
          {
            "extraFieldId": 975444541,
            "value": "ExtraData"
          }
        ],
        "firstName": "Jackie K.",
        "instantMessageAddress": "sip:employeeURI@sample.com",
        "lastName": "Abernathy",
        "memo": "Additional info relating to Employee",
        "seniority": "20050101002",
        "shortName": "JKAbernathy",
        "skills": [
          {
            "priority": 2,
            "skillId": 975444541,
            "startDate": "2000-12-30",
            "stopDate": "2000-12-30"
          }
        ],
        "sortName": "ABERNATHY, JACKIE K.",
        "terminationDate": "2000-12-30",
        "timeZoneId": "-9994561656.0",
        "lastModifiedTime": "2010-12-31T13:18:35Z",
        "lastModifiedBy": "-9994561656.0"
      }
    }
  ]
}

Updates a set of employees

Properties

Name Type Required Restrictions Description
updateEmployeePairs [EmployeeInfoUpdatePair] true none List of employee info update pairs.

EmployeeSelector

{
  "employeeFilter": {
    "employeeGroupFilter": {
      "date": "2000-12-30",
      "employeeGroupIds": [
        "-9994561656",
        "-9994561254"
      ]
    },
    "extraFieldFilter": {
      "extraFieldId": 2387932847,
      "operator": "EqualTo",
      "value": "EMP001"
    },
    "hireDateFilter": {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    },
    "segmentFilter": {
      "duration": {
        "maximumDuration": "15:02:00",
        "minimumDuration": "15:01:00"
      },
      "segmentDefinitionId": 66898,
      "start": {
        "startDateTime": "2010-12-31T13:18:35Z",
        "stopDateTime": "2010-12-31T13:18:35Z"
      },
      "stop": {
        "startDateTime": "2010-12-31T13:18:35Z",
        "stopDateTime": "2010-12-31T13:18:35Z"
      }
    },
    "skillFilter": {
      "date": "2000-12-30",
      "priorityRange": {
        "maximum": 1,
        "minimum": 1
      },
      "skillId": 1489356
    },
    "termDateFilter": {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  },
  "employeeIdentifiers": [
    "EMP001",
    "EMP002"
  ],
  "employeeIds": [
    "-9994561656",
    "-9994561254"
  ],
  "employeeNames": [
    "Ryan, J",
    "Abernathy"
  ],
  "hideInactiveEmployees": true,
  "names": [
    "Ryan, J",
    "Abernathy"
  ],
  "respectFilterProfile": true
}

Selects employees by name, ID, employee identifier, or by a complex filter.

Properties

Name Type Required Restrictions Description
employeeFilter EmployeeFilter false none Standard used for filtering employees.
* Employee filter allows filtering of employees by employee groups,
hire date, termination date, extra field, skill, and segment.
* Employee filter criteria is combined together by using the AND
operator to determine which employees match all filter criteria.
* hireDateFilter filters employees by effectiveHireDate (inclusive). Any employee with an effectiveHireDate between startDate and stopDate of supplied range will be included in the response.
* termDateFilter filters employees by terminationDate (inclusive). Any employee with a hireDate between startDate and stopDate of supplied range will be included in the response.
employeeIdentifiers [string] false none List of employee identifiers for explicit employee selection.
This is the employee identifier that is exposed to the end user in the
software. Employees with a name in the format "last_name, first_name"
that start with a value specified in this list are selected.
employeeIds [string] false none List of Alvaria-generated unique identifiers for the employees. The definition for these employees can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
List of employee ids for explicit employee selection. This is a system identifier for a resource, not the identifier exposed to end users in the software.
employeeNames [string] false none List of names used to select employees. Any employee with a name that begins with a supplied value will be selected. Employees match if the employee name in the format "last name, first name" starts with a value in this list.
hideInactiveEmployees boolean false none Indicates whether to hide inactive employees. If false (the default), only active employees are selected. If true, then all matching employees are returned.
names [string] false none This is a deprecated property.
respectFilterProfile boolean false none Indicates whether to use employee filter profiles. If true (the default), then only employees in the employee filter profile of the current user will be selected. If false, the employee filter profile is not considered.

EmployeeSkill

{
  "kind": "via#workforceEmployeeSkill",
  "id": "975444541",
  "code": "CSV",
  "description": "Customer Service Skill",
  "employeeSkillDescription": "Customer Service Skill"
}

Represents an employee skill. Employee skills identify the type of work an employee can perform.

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 employee skill.
code string false none Unique identifier for this employee skill, which can contain up to 30 characters.
description string false none This is a deprecated property.
employeeSkillDescription string false none Description for this employee skill.

EmployeeSkillAssociation

{
  "priority": 2,
  "skillId": 975444541,
  "startDate": "2000-12-30",
  "stopDate": "2000-12-30"
}

Represents an employee skill association.

Properties

Name Type Required Restrictions Description
priority integer(int32) true none Number indicating relative proficiency (relative to the other employee skills, or the proficiency of other employees in this same area).
skillId number(double) true none Alvaria-generated unique identifier for the employee skill associated with this employee. The definition for this employee skill can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeSkills endpoint.
startDate string(date) true none First day this employee is associated with this skill.
stopDate string(date) false none Last day this employee is associated with this skill. This value may be null and a value of "3268-12-12" signifies a null value.

EmployeeSkillCollection

{
  "kind": "via#workforceEmployeeSkillCollection",
  "employeeSkills": [
    {
      "kind": "via#workforceEmployeeSkill",
      "id": "975444541",
      "code": "CSV",
      "description": "Customer Service Skill",
      "employeeSkillDescription": "Customer Service Skill"
    }
  ],
  "totalItems": 500
}

Result of a query for employee skills. The result is a list of employee skills that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching employee skills. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeSkills [EmployeeSkill] false none List of employee skills.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeSkillSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeSkillIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Selects a set of employee skills by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
employeeSkillIds [string] false none Employee skills with a matching ID are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.

EmployeeStatusUpdater

{
  "active": false,
  "employeeIds": [
    "-9994561656",
    "-9994561254"
  ],
  "employmentStatus": "Employed",
  "terminationDate": "2000-12-30"
}

Describes a request to update the employment and/or active status of one or more employees.

Properties

Name Type Required Restrictions Description
active boolean false none Optional active value that sets all supplied employees to active if true, and inactive if false.
employeeIds [string] true none List of Alvaria-generated unique identifiers for the employees. The definition for these employees can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
One or more employees whose status will be updated. Updates for all employees must succeed or no employee status will be changed.
employmentStatus string false none Optional employee status value that sets all supplied employees to employed or terminated. If set to employed, termination date does not
apply and must not be specified. If set to terminated then termination date is required and must be specified.
terminationDate string(date) false none Optional termination date to be set for all supplied employees. If specified, employment status must also be set to terminated.

Enumerated Values

Property Value
employmentStatus Terminated
employmentStatus Employed

EmployeeSuperGroup

{
  "kind": "via#workforceEmployeeSuperGroup",
  "id": "975444541",
  "code": "NA",
  "description": "North America Employees",
  "employeeGroupIds": [
    "-9994561656",
    "-9994561254"
  ],
  "employeeSuperGroupDescription": "North America Employees",
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents an employee super group. Employee super group is a group of employee groups.

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 employee super group.
code string false none Unique identifier for this employee super group, which can contain up to 30 characters.
description string false none This is a deprecated property.
employeeGroupIds [string] false none List of Alvaria-generated unique identifiers for the employee groups associated with this employee super group. The definition for these employee groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeGroups endpoint.
employeeSuperGroupDescription string false none Description for this employee super group.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

EmployeeSuperGroupCollection

{
  "kind": "via#workforceEmployeeSuperGroupCollection",
  "employeeSuperGroups": [
    {
      "kind": "via#workforceEmployeeSuperGroup",
      "id": "975444541",
      "code": "NA",
      "description": "North America Employees",
      "employeeGroupIds": [
        "-9994561656",
        "-9994561254"
      ],
      "employeeSuperGroupDescription": "North America Employees",
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for employee super groups. The result is a list of employee super groups that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching employee super groups. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeSuperGroups [EmployeeSuperGroup] false none List of employee super groups.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

EmployeeSuperGroupSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "employeeSuperGroupIds": [
    "994684565",
    "994687481"
  ],
  "includeAssociatedEmployeeGroups": true,
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Selects a set of employee super groups by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
employeeSuperGroupIds [string] false none Employee super groups with a matching ID are selected.
includeAssociatedEmployeeGroups boolean false none Determines whether associated employee groups are included.
Default value is true.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.

Error

{
  "message": "Invalid JSON",
  "reason": "Invalid JSON",
  "scope": "null"
}

Details of an error response.

Properties

Name Type Required Restrictions Description
message string false none Message associated with the error.
reason string false none Reason for the error.
scope string false none Scope of the error.

ErrorResponse

{
  "code": "EInvalidInput",
  "errors": [
    {
      "message": "Invalid JSON",
      "reason": "Invalid JSON",
      "scope": "null"
    }
  ],
  "message": "Invalid JSON"
}

Information about an error that occurred while processing a request.

Properties

Name Type Required Restrictions Description
code string false none Unique error code for the error condition.
errors [Error] false none Detailed information about each error that occurred.
message string false none Message that describes the error condition.

ExtraFieldComparison

{
  "extraFieldId": 2387932847,
  "operator": "EqualTo",
  "value": "EMP001"
}

Extra field comparison can be used to filter data associated with extra fields. The comparison uses the following three properties together:

The following table shows each of the extra field data types and the comparison operators
supported for that type - if it is not supported, the resulting behavior is undefined.

For operators "EqualTo" and "NotEqualTo":
    DataType    Valid Values
    --------    ------------
    String      Any string
    Boolean     "true", "false", 1, or 0

For all operators ("LessThan", "LessThanEqualTo", "EqualTo", "NotEqualTo", 
"GreaterThanEqualTo", "GreaterThan"):
    DataType    Valid Values
    --------    ------------
    Integer     Any number with no decimals
    Float       Any number, with or without decimals
    Date        A string in the format yyyy-mm-dd
    Time        A string in the format hh:mm[:ss]
    DateTime    A string in the format yyyy-mm-dd[Thh:mm[:ss][Z|(+/-)hh:mm]]

Properties

Name Type Required Restrictions Description
extraFieldId number(double) false none Alvaria-generated unique identifier for the employee extra field used by this filter criteria. If supplied, only employees with this employee extra field value matching these criteria are selected. The definition for an employee extra field can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeExtraFields endpoint.
operator string false none How to compare the given value against the extra field value.
value string false none Value to compare against the extra field value.

Enumerated Values

Property Value
operator LessThan
operator LessThanEqualTo
operator EqualTo
operator NotEqualTo
operator GreaterThanEqualTo
operator GreaterThan

ExtraFieldValue

{
  "extraFieldId": 975444541,
  "value": "ExtraData"
}

Value of an employee extra field.

Properties

Name Type Required Restrictions Description
extraFieldId number(double) true none Alvaria-generated unique identifier for the employee extra field associated with this employee. The definition for this employee extra field can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeExtraFields endpoint.
value string false none Extra field value, expressed as a string.

ForecastGroup

{
  "kind": "via#workforceForecastGroup",
  "id": "975444541",
  "code": "CSV",
  "forecastGroupDescription": "CSV Forecast Group",
  "forecastGroupParentId": "-9994561656.0",
  "forecastGroupTreeId": "-9994561656.0",
  "timeZoneId": "-9994561656.0",
  "lastModifiedTime": "2010-12-31T13:13:51Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents a forecast gruop.

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 forecast group.
code string false none Unique identifier for this forecast group, which can contain up to 30 characters.
forecastGroupDescription string false none Description for this forecast group.
forecastGroupParentId string false none Alvaria-generated unique identifier for the forecast group associated with this forecast group. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
forecastGroupTreeId string false none Alvaria-generated unique identifier for the forecast group associated with this forecast group. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
timeZoneId string false none Alvaria-generated unique identifier for the time zone associated with this forecast group. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

ForecastGroupCollection

{
  "kind": "via#workforceForecastGroupCollection",
  "forecastGroups": [
    {
      "kind": "via#workforceForecastGroup",
      "id": "975444541",
      "code": "CSV",
      "forecastGroupDescription": "CSV Forecast Group",
      "forecastGroupParentId": "-9994561656.0",
      "forecastGroupTreeId": "-9994561656.0",
      "timeZoneId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for forecast groups. The result is a list of forecast groups that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching forecast groups. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
forecastGroups [ForecastGroup] false none List of forecast groups.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

ForecastGroupSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "forecastGroupIds": [
    "994684565",
    "994687481"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ]
}

Selects a set of forecast groups by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
forecastGroupIds [string] false none Forecast groups with a matching ID are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.

Image

{
  "bmp": "Qk3WAAAAAAAAADYAAAAoAAAACgAAAAUAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAu7u8sLCxcXFzurq7tLS1w8PDu7u85eXm//////////96enxSUlVQUFJsbG5cXF50dHZvb3Hs7e3///////9V//n5+fv7+/v7+/v7+/n5+fv7+9LS03znxpzt1Kzw2/v/////////////////////////+f37bubBgOnJZ+W+///////////////////////////7//xM4LN46MZJ4LKz/w==",
  "png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACISURBVBhXY8AF6v8zME2+wrgViLsmX2bcDhXGBKv+MzADFUyefIWpbsplxikMxsbGrEBxZihmsQdiEFtFXt4QqLBp8hWGtEmXGcIZFOXkpivKyx8FYSV5+cVKcnK7gPQcoPhyFRUJUaAmCAAKeAMlIoAK5irKyvoC+SFAtjOIrSItLQNRxcAAAB7MI2nTJYkAAAAAAElFTkSuQmCC"
}

Bitmap image that includes a BMP and a PNG representation.

Properties

Name Type Required Restrictions Description
bmp string(byte) false none Image as a BMP.
png string(byte) false none Image as a PNG image, which can be displayed in a browser.

IncludeAcdLogins

{
  "acdInstanceIds": [
    "-9994561656",
    "-9994561254"
  ]
}

Determines which ACD logins to include with the requested employee records.

Properties

Name Type Required Restrictions Description
acdInstanceIds [string] false none List of Alvaria-generated unique identifiers for the ACD instances. The definitions for these ACD instances can be retrieved with the via/v2/organizations/{orgId}/workforce/search/acdInstances endpoint.
ACD logins for ACD instances referenced in this list will be included with the requested employee records.
If this list is null or empty, all ACD logins will be returned.

IncludeAgentProductivityAcdGroup

{
  "acdGroupIdentifiers": [
    "289",
    "479"
  ],
  "acdInstanceId": "-9994561656"
}

Determines which agent productivity ACD group to group on for agent productivities request.

Properties

Name Type Required Restrictions Description
acdGroupIdentifiers [string] true none List of ACD instance group identifiers associated with this agent productivity ACD Group ID.
acdInstanceId string false none Alvaria-generated unique identifier for the ACD instance. The definition for this ACD instance can be retrieved with the via/v2/organizations/{orgId}/workforce/search/acdInstances endpoint. ACD instance associated with this agent productivity ACD Group ID.

IncludeConsolidationColumns

{
  "columnIdentifiers": [
    "RVSFORVOL",
    "ORGFORVOL"
  ],
  "forecastGroupIds": [
    "-9994561656",
    "-9994561254"
  ],
  "staffGroupIds": [
    "-9994561656",
    "-9994561254"
  ]
}

Consolidation with forecast groups, staff groups, and columns to include.

Properties

Name Type Required Restrictions Description
columnIdentifiers [string] false none List of column identifiers to include. Please refer to the Workforce SDK Developer Guide: Intra-Day Performance Column Descriptions section. This column identifier correspondences with the Internal Field Name in the guide.
forecastGroupIds [string] false none List of Alvaria-generated unique identifiers for the forecast groups. The definitions for these forecast groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
List of forecast groups to include.
staffGroupIds [string] false none List of Alvaria-generated unique identifiers for the staff groups. The definitions for these staff groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.
List of staff groups to include

IncludeEmployeeGroups

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeGroupClassIds": [
    "-9994561656",
    "-9994561254"
  ],
  "employeeGroupIds": [
    "-9994561656",
    "-9994561254"
  ]
}

Determines which employee group assignments to include with an employee record. Assignments selected by includeEmployeeGroups.employeeGroup OR by employeeGroupClass are included, but if neither parameters are specified, then all employee group assignments are included. The assignments selected includeEmployeeGroups.employeeGroup OR by employeeGroupClass are reduced to the assignments that intersect a date range within dateRanges. dateRanges restricts the group associations by startDate and stopDate (inclusive). Any group associations with a range defined by startDate and stopDate that overlaps any supplied ranges will be included in the response.

Properties

Name Type Required Restrictions Description
dateRanges [DateRange] false none Date range in which an employee assignment must intersect to be included in the list.
employeeGroupClassIds [string] false none List of Alvaria-generated unique identifiers for the employee group classes. The definitions for these employee group classes can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeGroupClasses endpoint.
Employee group assignments associated with an employee group with a employee group class with a matching ID in this list is included with employee records.
employeeGroupIds [string] false none List of Alvaria-generated unique identifiers for the employee groups. The definitions for these employee groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeGroups endpoint.
Employee group assignments associated with an employee group with a matching ID in this list is included with employee records.

IncludeExtraFields

{
  "extraFieldIds": [
    "-9994561656",
    "-9994561254"
  ]
}

Determines which extra field values to include with a requested employee record.

Properties

Name Type Required Restrictions Description
extraFieldIds [string] false none List of Alvaria-generated unique identifiers for the employee extra fields. The definitions for these employee extra fields can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeExtraFields endpoint.
Extra fields referenced in this list will be included with the requested employee records.
If this list is null or empty, all extra field values will be returned.

IncludeForecastGroupColumns

{
  "columnIdentifiers": [
    "RVSFORVOL",
    "ORGFORVOL"
  ],
  "forecastGroupId": "-979999997932"
}

Forecast group with columns to include.

Properties

Name Type Required Restrictions Description
columnIdentifiers [string] false none List of column identifiers to include. Please refer to the Workforce SDK Developer Guide: Intra-Day Performance Column Descriptions section. This column identifier correspondences with the Internal Field Name in the guide.
forecastGroupId string true none Alvaria-generated unique identifier for the forecast group. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint. Forecast group to include.

IncludeSkills

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "skillIds": [
    "-9994561656",
    "-9994561254"
  ]
}

Determines which employee skill associations to include with an employee record. Skill associations selected by includeSkills.skill are included, but if includeSkills.skill is not specified, then all employee skill associations are included. dateRanges restricts the skill associations by startDate and stopDate (inclusive). Any skill associations with a range defined by startDate and stopDate that overlaps any supplied ranges will be included in the response.

Properties

Name Type Required Restrictions Description
dateRanges [DateRange] false none Date range in which an employee skill association must intersect to be included in the list.
skillIds [string] false none List of Alvaria-generated unique identifiers for the employee skills. The definitions for these employee skills can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employeeSkills endpoint.
Any employee skill association with a skill in this list is included with employee records.

IncludeStaffGroupColumns

{
  "columnIdentifiers": [
    "RVSFORVOL",
    "ORGFORVOL"
  ],
  "staffGroupId": "-102147482579"
}

Staff group with columns to include.

Properties

Name Type Required Restrictions Description
columnIdentifiers [string] false none List of column identifiers to include. Please refer to the Workforce SDK Developer Guide: Intra-Day Performance Column Descriptions section. This column identifier correspondences with the Internal Field Name in the guide.
staffGroupId string true none Alvaria-generated unique identifier for the staff group. The definition for this staff group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint. Staff group to include.

IntegerRange

{
  "maximum": 1,
  "minimum": 1
}

Range of integer values.

Properties

Name Type Required Restrictions Description
maximum integer(int32) false none Maximum integer in the range.
minimum integer(int32) false none Minimum integer in the range. Must be less than or equal to maximum.

IntraDayPerformance

{
  "kind": "via#workforceIntraDayPerformance",
  "id": "975444541",
  "consolidation": {
    "columns": [
      {
        "dataType": "Float",
        "identifier": "RVSFORVOL",
        "maximum": 999999999,
        "maximumDecimals": 0,
        "minimum": 0,
        "readOnly": false,
        "summaryValue": 0,
        "values": [
          {
            "color": {
              "htmlColor": "800080",
              "windowsColor": 16777215
            },
            "fontColor": {
              "htmlColor": "800080",
              "windowsColor": 16777215
            },
            "index": 0,
            "threshold": "High",
            "value": "1"
          }
        ]
      }
    ],
    "openHours": {
      "periods": [
        {
          "index": 0,
          "open": false,
          "periodDateTime": "2010-12-31T13:13:51Z"
        }
      ]
    },
    "timeZoneId": "-9994561656.0"
  },
  "forecastGroups": [
    {
      "allocation": false,
      "columns": [
        {
          "dataType": "Float",
          "identifier": "RVSFORVOL",
          "maximum": 999999999,
          "maximumDecimals": 0,
          "minimum": 0,
          "readOnly": false,
          "summaryValue": 0,
          "values": [
            {
              "color": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "fontColor": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "index": 0,
              "threshold": "High",
              "value": "1"
            }
          ]
        }
      ],
      "forecastGroupId": "975444541",
      "groupProperties": {
        "assumptions": [
          {
            "allocationSet": "CSV",
            "averageHandeTimeOverride": "CSV",
            "scenario": "CSV",
            "staffBasis": "CSV",
            "volumeOverride": "CSV"
          }
        ],
        "histories": [
          {
            "timeStamp": "2008-09-15T15:53:00Z",
            "userName": "User",
            "action": "Action"
          }
        ]
      },
      "hasChildren": false,
      "multiSkill": false,
      "openHours": {
        "periods": [
          {
            "index": 0,
            "open": false,
            "periodDateTime": "2010-12-31T13:13:51Z"
          }
        ]
      }
    }
  ],
  "forecastUnit": "ThirtyMinute",
  "intraDayPerformanceDescription": "CSV 1/5/2003",
  "routingSet": {
    "kind": "via#workforceIntraDayPerformanceRoutingSet",
    "id": "975444541",
    "routings": [
      {
        "averageHandleTimeFactor": 1.5,
        "forecastGroupId": "-9994561656.0",
        "staffGroupId": "-9994561656.0"
      }
    ]
  },
  "staffGroups": [
    {
      "allocation": false,
      "columns": [
        {
          "dataType": "Float",
          "identifier": "RVSFORVOL",
          "maximum": 999999999,
          "maximumDecimals": 0,
          "minimum": 0,
          "readOnly": false,
          "summaryValue": 0,
          "values": [
            {
              "color": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "fontColor": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "index": 0,
              "threshold": "High",
              "value": "1"
            }
          ]
        }
      ],
      "groupProperties": {
        "assumptions": [
          {
            "allocationSet": "CSV",
            "averageHandeTimeOverride": "CSV",
            "scenario": "CSV",
            "staffBasis": "CSV",
            "volumeOverride": "CSV"
          }
        ],
        "histories": [
          {
            "timeStamp": "2008-09-15T15:53:00Z",
            "userName": "User",
            "action": "Action"
          }
        ]
      },
      "hasChildren": false,
      "multiSkill": false,
      "openHours": {
        "periods": [
          {
            "index": 0,
            "open": false,
            "periodDateTime": "2010-12-31T13:13:51Z"
          }
        ]
      },
      "staffGroupId": "975444541"
    }
  ],
  "startDateTime": "2010-12-31T13:13:51Z",
  "stopDateTime": "2010-12-31T13:13:51Z",
  "timeZoneId": "-9994561656.0"
}

Represents an intra-day performance.

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 intra-day performance.
consolidation IntraDayPerformanceConsolidationColumn false none Represents an intra-day performance consolidation column.
forecastGroups [IntraDayPerformanceForecastGroup] false none List of intra-day performance forecast groups associated with this intra-day performance.
forecastUnit string false none Forecast unit for this intra-day performance.
intraDayPerformanceDescription string false none Description for this intra-day performance.
routingSet IntraDayPerformanceRoutingSet false none Represents an intra-day performance routing set.
staffGroups [IntraDayPerformanceStaffGroup] false none List of intra-day performance staff groups associated with this intra-day performance.
startDateTime string(date-time) false none Start datetime for this intra-day performance.
stopDateTime string(date-time) false none Stop datetime for this intra-day performance.
timeZoneId string false none Alvaria-generated unique identifier for the time zone associated with this intra-day performance. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.

Enumerated Values

Property Value
forecastUnit FifteenMinute
forecastUnit ThirtyMinute

IntraDayPerformanceColumn

{
  "dataType": "Float",
  "identifier": "RVSFORVOL",
  "maximum": 999999999,
  "maximumDecimals": 0,
  "minimum": 0,
  "readOnly": false,
  "summaryValue": 0,
  "values": [
    {
      "color": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "fontColor": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "index": 0,
      "threshold": "High",
      "value": "1"
    }
  ]
}

Represents an intra-day performance column.

Properties

Name Type Required Restrictions Description
dataType string false none Data type for this intra-day performance column.
identifier string false none Identifier for this intra-day performance column.
maximum number(double) false none Maximum for this intra-day performance column.
maximumDecimals integer(int32) false none Maximum decimals for this intra-day performance column.
minimum number(double) false none Minimum for this intra-day performance column.
readOnly boolean false none Indicates whether this intra-day performance column is read only.
summaryValue number(double) false none Summary for this intra-day performance column.
values [IntraDayPerformanceColumnValue] false none List of column values associated with this intra-day performance column.

Enumerated Values

Property Value
dataType Float
dataType String
dataType Boolean
dataType Memo

IntraDayPerformanceColumnValue

{
  "color": {
    "htmlColor": "800080",
    "windowsColor": 16777215
  },
  "fontColor": {
    "htmlColor": "800080",
    "windowsColor": 16777215
  },
  "index": 0,
  "threshold": "High",
  "value": "1"
}

Represents an intra-day performance column value.

Properties

Name Type Required Restrictions Description
color Color false none Specific color, which includes a Windows color value and an RGB hexadecimal representation.
fontColor Color false none Specific color, which includes a Windows color value and an RGB hexadecimal representation.
index integer(int32) false none Index for this intra-day performance column value.
threshold string false none Threshold for this intra-day performance column value.
value string false none Value for this intra-day performance column value.

IntraDayPerformanceConsolidationColumn

{
  "columns": [
    {
      "dataType": "Float",
      "identifier": "RVSFORVOL",
      "maximum": 999999999,
      "maximumDecimals": 0,
      "minimum": 0,
      "readOnly": false,
      "summaryValue": 0,
      "values": [
        {
          "color": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "fontColor": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "index": 0,
          "threshold": "High",
          "value": "1"
        }
      ]
    }
  ],
  "openHours": {
    "periods": [
      {
        "index": 0,
        "open": false,
        "periodDateTime": "2010-12-31T13:13:51Z"
      }
    ]
  },
  "timeZoneId": "-9994561656.0"
}

Represents an intra-day performance consolidation column.

Properties

Name Type Required Restrictions Description
columns [IntraDayPerformanceColumn] false none List of columns associated with this intra-day performance consolidation column.
openHours IntraDayPerformanceOpenHours false none Represents an intra-day performance open hours.
timeZoneId string false none Alvaria-generated unique identifier for the time zone associated with this intra-day performance consolidation column. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.

IntraDayPerformanceForecastGroup

{
  "allocation": false,
  "columns": [
    {
      "dataType": "Float",
      "identifier": "RVSFORVOL",
      "maximum": 999999999,
      "maximumDecimals": 0,
      "minimum": 0,
      "readOnly": false,
      "summaryValue": 0,
      "values": [
        {
          "color": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "fontColor": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "index": 0,
          "threshold": "High",
          "value": "1"
        }
      ]
    }
  ],
  "forecastGroupId": "975444541",
  "groupProperties": {
    "assumptions": [
      {
        "allocationSet": "CSV",
        "averageHandeTimeOverride": "CSV",
        "scenario": "CSV",
        "staffBasis": "CSV",
        "volumeOverride": "CSV"
      }
    ],
    "histories": [
      {
        "timeStamp": "2008-09-15T15:53:00Z",
        "userName": "User",
        "action": "Action"
      }
    ]
  },
  "hasChildren": false,
  "multiSkill": false,
  "openHours": {
    "periods": [
      {
        "index": 0,
        "open": false,
        "periodDateTime": "2010-12-31T13:13:51Z"
      }
    ]
  }
}

Represents an intra-day performance forecast group.

Properties

Name Type Required Restrictions Description
allocation boolean false none Indicates whether this intra-day performance forecast group is allocation.
columns [IntraDayPerformanceColumn] false none List of columns associated with this intra-day performance forecast group.
forecastGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this intra-day performance forecast group. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
groupProperties IntraDayPerformanceGroupProperties false none Represents intra-day performance group properties.
hasChildren boolean false none Indicates whether this intra-day performance forecast group has children.
multiSkill boolean false none Indicates whether this intra-day performance forecast group is multi-skilled.
openHours IntraDayPerformanceOpenHours false none Represents an intra-day performance open hours.

IntraDayPerformanceForecastGroupTree

{
  "forecastGroupId": "975444541",
  "forecastGroups": [
    {
      "forecastGroupId": "975444541",
      "forecastGroups": [],
      "multiSkill": false,
      "staffGroups": [
        {
          "multiSkill": false,
          "staffGroupId": "975444541",
          "staffGroups": [
            {}
          ],
          "startDateTime": "2010-12-31T13:13:51Z",
          "stopDateTime": "2010-12-31T13:13:51Z"
        }
      ],
      "startDateTime": "2010-12-31T13:13:51Z",
      "stopDateTime": "2010-12-31T13:13:51Z"
    }
  ],
  "multiSkill": false,
  "staffGroups": [
    {
      "multiSkill": false,
      "staffGroupId": "975444541",
      "staffGroups": [
        {}
      ],
      "startDateTime": "2010-12-31T13:13:51Z",
      "stopDateTime": "2010-12-31T13:13:51Z"
    }
  ],
  "startDateTime": "2010-12-31T13:13:51Z",
  "stopDateTime": "2010-12-31T13:13:51Z"
}

Represents intra-day performance forecast group tree.

Properties

Name Type Required Restrictions Description
forecastGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this intra-day performance forecast group tree. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
forecastGroups [IntraDayPerformanceForecastGroupTree] false none List of forecast group trees associated with this intra-day performance forecast group tree.
multiSkill boolean false none Indicates whether this intra-day performance forecast group tree is multi-skilled.
staffGroups [IntraDayPerformanceStaffGroupTree] false none List of staff groups trees associated with this intra-day performance forecast group tree.
startDateTime string(date-time) false none Start datetime for this intra-day performance forecast group tree.
stopDateTime string(date-time) false none Stop datetime for this intra-day performance forecast group tree.

IntraDayPerformanceGroupProperties

{
  "assumptions": [
    {
      "allocationSet": "CSV",
      "averageHandeTimeOverride": "CSV",
      "scenario": "CSV",
      "staffBasis": "CSV",
      "volumeOverride": "CSV"
    }
  ],
  "histories": [
    {
      "timeStamp": "2008-09-15T15:53:00Z",
      "userName": "User",
      "action": "Action"
    }
  ]
}

Represents intra-day performance group properties.

Properties

Name Type Required Restrictions Description
assumptions [IntraDayPerformanceGroupPropertiesAssumptions] false none List of assumptions associated with intra-day performance group properties.
histories [IntraDayPerformanceGroupPropertiesHistory] false none List of property histories associated with intra-day performance group properties.

IntraDayPerformanceGroupPropertiesAssumptions

{
  "allocationSet": "CSV",
  "averageHandeTimeOverride": "CSV",
  "scenario": "CSV",
  "staffBasis": "CSV",
  "volumeOverride": "CSV"
}

Represent intra-day performance group properties assumptions.

Properties

Name Type Required Restrictions Description
allocationSet string false none Allocation set for intra-day performance group properties assumptions.
averageHandeTimeOverride string false none Average handle time override for intra-day performance group properties assumptions.
scenario string false none Scenario for intra-day performance group properties assumptions.
staffBasis string false none Staff basis for intra-day performance group properties assumptions.
volumeOverride string false none Volume override for intra-day performance group properties assumptions.

IntraDayPerformanceGroupPropertiesHistory

{
  "timeStamp": "2008-09-15T15:53:00Z",
  "userName": "User",
  "action": "Action"
}

Represents an intra-day performance group properties history.

Properties

Name Type Required Restrictions Description
timeStamp string false none Time stamp for intra-day performance group properties history.
userName string false none User name for intra-day performance group properties history.
action string false none Action for intra-day performance group properties history.

IntraDayPerformanceOpenHours

{
  "periods": [
    {
      "index": 0,
      "open": false,
      "periodDateTime": "2010-12-31T13:13:51Z"
    }
  ]
}

Represents an intra-day performance open hours.

Properties

Name Type Required Restrictions Description
periods [IntraDayPerformanceOpenHoursPeriod] false none List of periods associated with this intra-day performance open hours.

IntraDayPerformanceOpenHoursPeriod

{
  "index": 0,
  "open": false,
  "periodDateTime": "2010-12-31T13:13:51Z"
}

Represents an intra-day performance open hours period.

Properties

Name Type Required Restrictions Description
index integer(int32) false none Index for this intra-day performance open hours period.
open boolean false none Indicates whether this intra-day performance open hours period is open.
periodDateTime string(date-time) false none Period datetime for this intra-day performance open hours period.

IntraDayPerformanceResponse

{
  "kind": "via#workforceIntraDayPerformanceResponse",
  "intraDayPerformance": {
    "kind": "via#workforceIntraDayPerformance",
    "id": "975444541",
    "consolidation": {
      "columns": [
        {
          "dataType": "Float",
          "identifier": "RVSFORVOL",
          "maximum": 999999999,
          "maximumDecimals": 0,
          "minimum": 0,
          "readOnly": false,
          "summaryValue": 0,
          "values": [
            {
              "color": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "fontColor": {
                "htmlColor": "800080",
                "windowsColor": 16777215
              },
              "index": 0,
              "threshold": "High",
              "value": "1"
            }
          ]
        }
      ],
      "openHours": {
        "periods": [
          {
            "index": 0,
            "open": false,
            "periodDateTime": "2010-12-31T13:13:51Z"
          }
        ]
      },
      "timeZoneId": "-9994561656.0"
    },
    "forecastGroups": [
      {
        "allocation": false,
        "columns": [
          {
            "dataType": "Float",
            "identifier": "RVSFORVOL",
            "maximum": 999999999,
            "maximumDecimals": 0,
            "minimum": 0,
            "readOnly": false,
            "summaryValue": 0,
            "values": [
              {
                "color": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "fontColor": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "index": 0,
                "threshold": "High",
                "value": "1"
              }
            ]
          }
        ],
        "forecastGroupId": "975444541",
        "groupProperties": {
          "assumptions": [
            {
              "allocationSet": "CSV",
              "averageHandeTimeOverride": "CSV",
              "scenario": "CSV",
              "staffBasis": "CSV",
              "volumeOverride": "CSV"
            }
          ],
          "histories": [
            {
              "timeStamp": "2008-09-15T15:53:00Z",
              "userName": "User",
              "action": "Action"
            }
          ]
        },
        "hasChildren": false,
        "multiSkill": false,
        "openHours": {
          "periods": [
            {
              "index": 0,
              "open": false,
              "periodDateTime": "2010-12-31T13:13:51Z"
            }
          ]
        }
      }
    ],
    "forecastUnit": "ThirtyMinute",
    "intraDayPerformanceDescription": "CSV 1/5/2003",
    "routingSet": {
      "kind": "via#workforceIntraDayPerformanceRoutingSet",
      "id": "975444541",
      "routings": [
        {
          "averageHandleTimeFactor": 1.5,
          "forecastGroupId": "-9994561656.0",
          "staffGroupId": "-9994561656.0"
        }
      ]
    },
    "staffGroups": [
      {
        "allocation": false,
        "columns": [
          {
            "dataType": "Float",
            "identifier": "RVSFORVOL",
            "maximum": 999999999,
            "maximumDecimals": 0,
            "minimum": 0,
            "readOnly": false,
            "summaryValue": 0,
            "values": [
              {
                "color": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "fontColor": {
                  "htmlColor": "800080",
                  "windowsColor": 16777215
                },
                "index": 0,
                "threshold": "High",
                "value": "1"
              }
            ]
          }
        ],
        "groupProperties": {
          "assumptions": [
            {
              "allocationSet": "CSV",
              "averageHandeTimeOverride": "CSV",
              "scenario": "CSV",
              "staffBasis": "CSV",
              "volumeOverride": "CSV"
            }
          ],
          "histories": [
            {
              "timeStamp": "2008-09-15T15:53:00Z",
              "userName": "User",
              "action": "Action"
            }
          ]
        },
        "hasChildren": false,
        "multiSkill": false,
        "openHours": {
          "periods": [
            {
              "index": 0,
              "open": false,
              "periodDateTime": "2010-12-31T13:13:51Z"
            }
          ]
        },
        "staffGroupId": "975444541"
      }
    ],
    "startDateTime": "2010-12-31T13:13:51Z",
    "stopDateTime": "2010-12-31T13:13:51Z",
    "timeZoneId": "-9994561656.0"
  }
}

Result of a query for intra-day performance. The result is an intra-day performance that was selected by the selector.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
intraDayPerformance IntraDayPerformance false none Represents an intra-day performance.

IntraDayPerformanceRouting

{
  "averageHandleTimeFactor": 1.5,
  "forecastGroupId": "-9994561656.0",
  "staffGroupId": "-9994561656.0"
}

Represents an intra-day performance routing.

Properties

Name Type Required Restrictions Description
averageHandleTimeFactor number(double) false none Average handle time factor for this intra-day performance routing.
forecastGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this intra-day performance routing. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
staffGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this intra-day performance routing. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.

IntraDayPerformanceRoutingSet

{
  "kind": "via#workforceIntraDayPerformanceRoutingSet",
  "id": "975444541",
  "routings": [
    {
      "averageHandleTimeFactor": 1.5,
      "forecastGroupId": "-9994561656.0",
      "staffGroupId": "-9994561656.0"
    }
  ]
}

Represents an intra-day performance routing set.

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 intra-day performance routing set.
routings [IntraDayPerformanceRouting] false none List of routings associated with this intra-day performance routing set.

IntraDayPerformanceSelector

{
  "includeConsolidationColumns": {
    "columnIdentifiers": [
      "RVSFORVOL",
      "ORGFORVOL"
    ],
    "forecastGroupIds": [
      "-9994561656",
      "-9994561254"
    ],
    "staffGroupIds": [
      "-9994561656",
      "-9994561254"
    ]
  },
  "includeForecastGroupColumns": [
    {
      "columnIdentifiers": [
        "RVSFORVOL",
        "ORGFORVOL"
      ],
      "forecastGroupId": "-979999997932"
    }
  ],
  "includeOpenHours": false,
  "includeProperties": false,
  "includeStaffGroupColumns": [
    {
      "columnIdentifiers": [
        "RVSFORVOL",
        "ORGFORVOL"
      ],
      "staffGroupId": "-102147482579"
    }
  ],
  "multiSkillConfiguration": {
    "adjustments": false,
    "basis": "Original",
    "startDateTime": "2010-12-31T13:18:35Z",
    "stopDateTime": "2010-12-31T13:18:35Z"
  }
}

Specifies intra-day performance details to include such as forecast groups, staff groups, consolidation, and columns.

Properties

Name Type Required Restrictions Description
includeConsolidationColumns IncludeConsolidationColumns false none Consolidation with forecast groups, staff groups, and columns to include.
includeForecastGroupColumns [IncludeForecastGroupColumns] false none List of forecast groups with columns to include.
includeOpenHours boolean false none Determines whether the open hours are included.
Default is true.
includeProperties boolean false none Determines whether the properties are included.
Default is true.
includeStaffGroupColumns [IncludeStaffGroupColumns] false none List of staff groups with columns to include.
multiSkillConfiguration MultiSkillConfiguration false none Determines how the intra-day performance will run the multi-skill simulator as specified by the basis and adjustments if present or as required to satisfy the request if not present.

IntraDayPerformanceStaffGroup

{
  "allocation": false,
  "columns": [
    {
      "dataType": "Float",
      "identifier": "RVSFORVOL",
      "maximum": 999999999,
      "maximumDecimals": 0,
      "minimum": 0,
      "readOnly": false,
      "summaryValue": 0,
      "values": [
        {
          "color": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "fontColor": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "index": 0,
          "threshold": "High",
          "value": "1"
        }
      ]
    }
  ],
  "groupProperties": {
    "assumptions": [
      {
        "allocationSet": "CSV",
        "averageHandeTimeOverride": "CSV",
        "scenario": "CSV",
        "staffBasis": "CSV",
        "volumeOverride": "CSV"
      }
    ],
    "histories": [
      {
        "timeStamp": "2008-09-15T15:53:00Z",
        "userName": "User",
        "action": "Action"
      }
    ]
  },
  "hasChildren": false,
  "multiSkill": false,
  "openHours": {
    "periods": [
      {
        "index": 0,
        "open": false,
        "periodDateTime": "2010-12-31T13:13:51Z"
      }
    ]
  },
  "staffGroupId": "975444541"
}

Represents an intra-day performance staff group.

Properties

Name Type Required Restrictions Description
allocation boolean false none Indicates whether this intra-day performance staff group is allocation.
columns [IntraDayPerformanceColumn] false none List of columns associated with this intra-day performance staff group.
groupProperties IntraDayPerformanceGroupProperties false none Represents intra-day performance group properties.
hasChildren boolean false none Indicates whether this intra-day performance staff group has children.
multiSkill boolean false none Indicates whether this intra-day performance staff group is multi-skilled.
openHours IntraDayPerformanceOpenHours false none Represents an intra-day performance open hours.
staffGroupId string false none Alvaria-generated unique identifier for the staff group associated with this intra-day performance staff group. The definition for this staff group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.

IntraDayPerformanceStaffGroupTree

{
  "multiSkill": false,
  "staffGroupId": "975444541",
  "staffGroups": [
    {
      "multiSkill": false,
      "staffGroupId": "975444541",
      "staffGroups": [],
      "startDateTime": "2010-12-31T13:13:51Z",
      "stopDateTime": "2010-12-31T13:13:51Z"
    }
  ],
  "startDateTime": "2010-12-31T13:13:51Z",
  "stopDateTime": "2010-12-31T13:13:51Z"
}

Represents an intra-day performance staff group tree.

Properties

Name Type Required Restrictions Description
multiSkill boolean false none Indicates whether this intra-day performance staff group tree is multi-skilled.
staffGroupId string false none Alvaria-generated unique identifier for the staff group associated with this intra-day performance staff group tree. The definition for this staff group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.
staffGroups [IntraDayPerformanceStaffGroupTree] false none List of staff groups trees for this intra-day performance staff group tree.
startDateTime string(date-time) false none Start datetime for this intra-day performance staff group tree.
stopDateTime string(date-time) false none Stop datetime for this intra-day performance staff group tree.

IntraDayPerformanceSummary

{
  "kind": "via#workforceIntraDayPerformanceSummary",
  "id": "975444541",
  "createdBy": "TESTUSER",
  "createdOnDateTime": "2010-12-31T13:13:51Z",
  "forecastGroups": [
    {
      "forecastGroupId": "975444541",
      "forecastGroups": [
        {}
      ],
      "multiSkill": false,
      "staffGroups": [
        {
          "multiSkill": false,
          "staffGroupId": "975444541",
          "staffGroups": [
            {}
          ],
          "startDateTime": "2010-12-31T13:13:51Z",
          "stopDateTime": "2010-12-31T13:13:51Z"
        }
      ],
      "startDateTime": "2010-12-31T13:13:51Z",
      "stopDateTime": "2010-12-31T13:13:51Z"
    }
  ],
  "routingSetId": "-9994561656.0",
  "startDateTime": "2010-12-31T13:13:51Z",
  "stopDateTime": "2010-12-31T13:13:51Z",
  "timeZoneId": "-9994561656.0"
}

Represents an intra-day performance summary.

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 intra-day performance summary.
createdBy string false none User who created this intra-day performance summary.
createdOnDateTime string(date-time) false none Timestamp that indicates when this intra-day performance summary was created.
forecastGroups [IntraDayPerformanceForecastGroupTree] false none List of forecast groups associated with this intra-day performance summary.
routingSetId string false none Alvaria-generated unique identifier for the routing set associated with this intra-day performance summary. The definition for this routing set can be retrieved with the via/v2/organizations/{orgId}/workforce/search/routingSets endpoint.
startDateTime string(date-time) false none Start datetime for this intra-day performance summary.
stopDateTime string(date-time) false none Stop datetime for this intra-day performance summary.
timeZoneId string false none Alvaria-generated unique identifier for the time zone associated with this intra-day performance summary. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.

IntraDayPerformanceSummaryCollection

{
  "kind": "via#workforceIntraDayPerformanceSummaryCollection",
  "intraDayPerformanceSummaries": [
    {
      "kind": "via#workforceIntraDayPerformanceSummary",
      "id": "975444541",
      "createdBy": "TESTUSER",
      "createdOnDateTime": "2010-12-31T13:13:51Z",
      "forecastGroups": [
        {
          "forecastGroupId": "975444541",
          "forecastGroups": [
            {}
          ],
          "multiSkill": false,
          "staffGroups": [
            {
              "multiSkill": false,
              "staffGroupId": "975444541",
              "staffGroups": [
                {}
              ],
              "startDateTime": "2010-12-31T13:13:51Z",
              "stopDateTime": "2010-12-31T13:13:51Z"
            }
          ],
          "startDateTime": "2010-12-31T13:13:51Z",
          "stopDateTime": "2010-12-31T13:13:51Z"
        }
      ],
      "routingSetId": "-9994561656.0",
      "startDateTime": "2010-12-31T13:13:51Z",
      "stopDateTime": "2010-12-31T13:13:51Z",
      "timeZoneId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for intra-day performance summaries. The result is a list of intra-day performance summaries that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching intra-day performance summaries. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
intraDayPerformanceSummaries [IntraDayPerformanceSummary] false none List of intra-day performance summaries.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

IntraDayPerformanceSummarySelector

{
  "dateTimeRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "forecastGroupIds": [
    "994684565",
    "994687481"
  ],
  "routingSetIds": [
    "994684565",
    "994687481"
  ],
  "staffGroupIds": [
    "994684565",
    "994687481"
  ]
}

Selects a set of intra-day performance summaries for routing sets, forecast groups, and/or staff groups within the requested date time range.

Properties

Name Type Required Restrictions Description
dateTimeRanges [DateTimeRange] false none Intra-day performance summaries with a datetime within any specified range will be selected.
forecastGroupIds [string] false none List of Alvaria-generated unique identifiers for the forecast groups. The definition for these forecast groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint. Intra-day performance summaries associated with forecast groups with a matching ID are selected
routingSetIds [string] false none List of Alvaria-generated unique identifiers for the routing sets. The definition for these routing sets can be retrieved with the via/v2/organizations/{orgId}/workforce/search/routingSets endpoint. Intra-day performance summaries associated with routing sets with a matching ID are selected
staffGroupIds [string] false none List of Alvaria-generated unique identifiers for the staff groups. The definition for these staff groups can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint. Intra-day performance summaries associated with staff groups with a matching ID are selected

MultiSkillConfiguration

{
  "adjustments": false,
  "basis": "Original",
  "startDateTime": "2010-12-31T13:18:35Z",
  "stopDateTime": "2010-12-31T13:18:35Z"
}

Determines how the intra-day performance will run the multi-skill simulator as specified by the basis and adjustments if present or as required to satisfy the request if not present.

Properties

Name Type Required Restrictions Description
adjustments boolean false none Adjustments for this multi-skill configuration.
basis string false none Basis for this multi-skill configuration.
startDateTime string(date-time) false none Start datetime for this multi-skill configuration.
stopDateTime string(date-time) false none Stop datetime for this multi-skill configuration.

Enumerated Values

Property Value
basis Original
basis Revised
basis Actual

Perspective

{
  "kind": "via#workforcePerspective",
  "id": "975444541",
  "code": "STAFF",
  "description": "Staffing Perspective",
  "perspectiveDescription": "Staffing Perspective",
  "states": [
    {
      "kind": "via#workforceState",
      "id": "975444541",
      "code": "PAID",
      "description": "Paid",
      "color": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "default": true,
      "fontColor": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "image": {
        "bmp": "Qk3WAAAAAAAAADYAAAAoAAAACgAAAAUAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAu7u8sLCxcXFzurq7tLS1w8PDu7u85eXm//////////96enxSUlVQUFJsbG5cXF50dHZvb3Hs7e3///////9V//n5+fv7+/v7+/v7+/n5+fv7+9LS03znxpzt1Kzw2/v/////////////////////////+f37bubBgOnJZ+W+///////////////////////////7//xM4LN46MZJ4LKz/w==",
        "png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACISURBVBhXY8AF6v8zME2+wrgViLsmX2bcDhXGBKv+MzADFUyefIWpbsplxikMxsbGrEBxZihmsQdiEFtFXt4QqLBp8hWGtEmXGcIZFOXkpivKyx8FYSV5+cVKcnK7gPQcoPhyFRUJUaAmCAAKeAMlIoAK5irKyvoC+SFAtjOIrSItLQNRxcAAAB7MI2nTJYkAAAAAAElFTkSuQmCC"
      },
      "isDefault": true,
      "stateDescription": "Paid"
    }
  ],
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents a perspective. Perspective is an area of interest, or point of view, for describing the effects or implications of various segments. For example, taking a 15-minute break has a negative effect from the perspective of staffing levels, but a neutral effect from the perspective of whether the employee is being paid.

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 perspective.
code string false none Unique identifier for this perspective, which can contain up to 30 characters.
description string false none This is a deprecated property.
perspectiveDescription string false none Description for this perspective.
states [State] false none List of states defined for this perspective.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

PerspectiveCollection

{
  "kind": "via#workforcePerspectiveCollection",
  "perspectives": [
    {
      "kind": "via#workforcePerspective",
      "id": "975444541",
      "code": "STAFF",
      "description": "Staffing Perspective",
      "perspectiveDescription": "Staffing Perspective",
      "states": [
        {
          "kind": "via#workforceState",
          "id": "975444541",
          "code": "PAID",
          "description": "Paid",
          "color": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "default": true,
          "fontColor": {
            "htmlColor": "800080",
            "windowsColor": 16777215
          },
          "image": {
            "bmp": "Qk3WAAAAAAAAADYAAAAoAAAACgAAAAUAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAu7u8sLCxcXFzurq7tLS1w8PDu7u85eXm//////////96enxSUlVQUFJsbG5cXF50dHZvb3Hs7e3///////9V//n5+fv7+/v7+/v7+/n5+fv7+9LS03znxpzt1Kzw2/v/////////////////////////+f37bubBgOnJZ+W+///////////////////////////7//xM4LN46MZJ4LKz/w==",
            "png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACISURBVBhXY8AF6v8zME2+wrgViLsmX2bcDhXGBKv+MzADFUyefIWpbsplxikMxsbGrEBxZihmsQdiEFtFXt4QqLBp8hWGtEmXGcIZFOXkpivKyx8FYSV5+cVKcnK7gPQcoPhyFRUJUaAmCAAKeAMlIoAK5irKyvoC+SFAtjOIrSItLQNRxcAAAB7MI2nTJYkAAAAAAElFTkSuQmCC"
          },
          "isDefault": true,
          "stateDescription": "Paid"
        }
      ],
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for perspectives. The result contains a list of perspectives that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to be only a subset of the matching perspectives. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
perspectives [Perspective] false none List of perspectives.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

PerspectivePurpose

{
  "kind": "via#workforcePerspectivePurpose",
  "perspectiveId": "-9994561656.0",
  "perspectiveName": "ACD"
}

Represents a perspective purpose.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
perspectiveId string false none Alvaria-generated unique identifier for the perspective associated with this perspective purpose. The definition for this perspective can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint.
perspectiveName string false none Name for this perspective purpose, which can contain up to 30 characters.

PerspectivePurposeCollection

{
  "kind": "via#workforcePerspectivePurposeCollection",
  "perspectivePurposes": [
    {
      "kind": "via#workforcePerspectivePurpose",
      "perspectiveId": "-9994561656.0",
      "perspectiveName": "ACD"
    }
  ],
  "totalItems": 500
}

Result of a query for perspective purposes. The result is a list of perspective purposes that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching perspective purposes. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
perspectivePurposes [PerspectivePurpose] false none List of perspective purposes.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

PerspectiveSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "perspectiveIds": [
    "994684565",
    "994687481"
  ]
}

Selects a set of perspectives by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
perspectiveIds [string] false none Perspectives with a matching ID are selected.

RoutingSet

{
  "kind": "via#workforceRoutingSet",
  "id": "975444541",
  "code": "CSV",
  "multiSkill": false,
  "routings": [
    {
      "forecastGroupId": "-9994561656.0",
      "priority": 1,
      "staffGroupId": "-9994561656.0"
    }
  ],
  "routingSetDescription": "CSV Routing Set",
  "serviceLevelGoalSeconds": 1.5,
  "staffGroupProperties": [
    {
      "staffGroupId": "-9994561656.0",
      "value": "STAFFADJUST"
    }
  ],
  "lastModifiedTime": "2010-12-31T13:13:51Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents a routing set.

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 routing set.
code string false none Unique identifier for this routing set, which can contain up to 30 characters.
multiSkill boolean false none Indicates whether this routing set is multi-skilled.
routings [RoutingSetRouting] false none List of routings associated with this routing set.
routingSetDescription string false none Description for this routing set.
serviceLevelGoalSeconds number(double) false none Service level goal seconds for this routing set.
staffGroupProperties [RoutingSetStaffGroupProperty] false none List of staff group properties associated with this routing set.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

RoutingSetCollection

{
  "kind": "via#workforceRoutingSetCollection",
  "routingSets": [
    {
      "kind": "via#workforceRoutingSet",
      "id": "975444541",
      "code": "CSV",
      "multiSkill": false,
      "routings": [
        {
          "forecastGroupId": "-9994561656.0",
          "priority": 1,
          "staffGroupId": "-9994561656.0"
        }
      ],
      "routingSetDescription": "CSV Routing Set",
      "serviceLevelGoalSeconds": 1.5,
      "staffGroupProperties": [
        {
          "staffGroupId": "-9994561656.0",
          "value": "STAFFADJUST"
        }
      ],
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for routing sets. The result is a list of routing sets that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching routing sets. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
routingSets [RoutingSet] false none List of routing sets.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

RoutingSetRouting

{
  "forecastGroupId": "-9994561656.0",
  "priority": 1,
  "staffGroupId": "-9994561656.0"
}

Represents a routing.

Properties

Name Type Required Restrictions Description
forecastGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this routing. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/forecastGroups endpoint.
priority integer(int32) false none Priority for this routing.
staffGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this routing. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.

RoutingSetSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "includeDetails": false,
  "partialCodes": [
    "BLU",
    "G"
  ],
  "routingSetIds": [
    "994684565",
    "994687481"
  ]
}

Selects a set of routing sets by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
includeDetails boolean false none Determines whether associated summary routing set information is included.
Default value is true.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
routingSetIds [string] false none Routing sets with a matching ID are selected.

RoutingSetStaffGroupProperty

{
  "staffGroupId": "-9994561656.0",
  "value": "STAFFADJUST"
}

Represents a staff group property. Used to assign properties to the staff groups in a routing set. Staff groups of a routings set are either volume adjustable (VOLADJUST) or staff adjustable (STAFFADJUST).

Properties

Name Type Required Restrictions Description
staffGroupId string false none Alvaria-generated unique identifier for the forecast group associated with this staff group property. The definition for this forecast group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.
value string false none Routing set staff property value for this staff group property.

Enumerated Values

Property Value
value VolumeAdjust
value StaffAdjust

SavedResponse

{
  "kind": "via#workforceSavedResponse"
}

Saved response.

Properties

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

ScheduledSpan

{
  "startDateTime": "2010-12-31T13:18:35Z",
  "stateId": "-9994561656.0",
  "stopDateTime": "2010-12-31T13:18:35Z"
}

Represents a schedule span.

Properties

Name Type Required Restrictions Description
startDateTime string(date-time) false none Start datetime for this scheduled span.
stateId string false none Alvaria-generated unique identifier for the state associated with this scheduled span. The definition for this state can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint which include states associated with each perspective.
stopDateTime string(date-time) false none Stop datetime for this scheduled span.

Segment

{
  "kind": "via#workforceScheduleSegment",
  "id": "975444541",
  "employeeId": "-9994561656.0",
  "memo": "Vacation",
  "nominalDate": "2018-04-29",
  "segmentDefinitionId": "-9994561656.0",
  "segmentType": "Detail",
  "startTime": "2008-09-15T15:53:00Z",
  "stopTime": "2008-09-15T15:53:00Z"
}

Represents a segment. Basic building block from which schedules are formed. This is a record of how an employee is spending a specific period of time.

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 segment.
employeeId string false none Alvaria-generated unique identifier for the employee associated with this segment. The definition for this employee can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
memo string false none Memo associated with this segment
nominalDate string(date) false none Nominal date of this segment. The time and bias of this value is ignored.
segmentDefinitionId string false none Alvaria-generated unique identifier for the segment definition associated with this segment. The definition for this segment definition can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segmentDefinitions endpoint.
segmentType string false none Segment type, which is either general or detail.
A general segment is a segment that doesn't have a specific start and stop time. A general segment can be considered to occur all day on the nominal date.
A detail segment is a segment that has a specific start and stop time.
startTime string(date-time) false none Moment value, which is for detail type segment only
stopTime string(date-time) false none Moment value, which is for detail type segment only.

Enumerated Values

Property Value
segmentType General
segmentType Detail

SegmentAudit

{
  "kind": "via#workforceScheduleSegmentAudit",
  "auditAction": "ADD",
  "segment": {
    "kind": "via#workforceScheduleSegment",
    "id": "975444541",
    "employeeId": "-9994561656.0",
    "memo": "Vacation",
    "nominalDate": "2018-04-29",
    "segmentDefinitionId": "-9994561656.0",
    "segmentType": "Detail",
    "startTime": "2008-09-15T15:53:00Z",
    "stopTime": "2008-09-15T15:53:00Z"
  },
  "segmentAuditType": "Detail",
  "sequenceNumber": 1698893,
  "timeStamp": "2008-09-15T15:53:00Z"
}

Represents a segment audit. Audit for basic building block from which schedules are formed. This is a audit record of how an employee is spending a specific period of time.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
auditAction string false none Audit action of this segment audit, can be ADD, CHANGE, or DELETE.
segment Segment false none Represents a segment.
Basic building block from which schedules are formed. This is a record of how an employee is spending a specific period of time.
segmentAuditType string false none Segment audit type, which is either general or detail.
A general segment audit is a segment audit that has a general segment.
A detail segment audit is a segment audit that has a detail segment.
sequenceNumber integer(int32) false none Sequence number of this segment audit.
timeStamp string false none TimeStamp of this segment audit.

Enumerated Values

Property Value
segmentAuditType General
segmentAuditType Detail

SegmentAuditActions

{
  "add": true,
  "change": true,
  "delete": true
}

Represents audit actions for a segment audit to select for retrieval. If this filter clause is specified then only audits with an action flagged as true will be selected.

Properties

Name Type Required Restrictions Description
add boolean false none Add audit action.
change boolean false none Change audit action.
delete boolean false none Delete audit action.

SegmentAuditCollection

{
  "kind": "via#workforceSegmentAuditCollection",
  "segmentAudits": [
    {
      "kind": "via#workforceScheduleSegmentAudit",
      "auditAction": "ADD",
      "segment": {
        "kind": "via#workforceScheduleSegment",
        "id": "975444541",
        "employeeId": "-9994561656.0",
        "memo": "Vacation",
        "nominalDate": "2018-04-29",
        "segmentDefinitionId": "-9994561656.0",
        "segmentType": "Detail",
        "startTime": "2008-09-15T15:53:00Z",
        "stopTime": "2008-09-15T15:53:00Z"
      },
      "segmentAuditType": "Detail",
      "sequenceNumber": 1698893,
      "timeStamp": "2008-09-15T15:53:00Z"
    }
  ],
  "totalItems": 500
}

Result of a query for segment audits. The result is a list of segment audits that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching segment audits. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
segmentAudits [SegmentAudit] false none List of segment audits.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SegmentAuditFieldChanges

{
  "employee": true,
  "nominalDate": true,
  "segmentDefinition": true,
  "start": true,
  "stop": true
}

Represents field changes for a segment audit to select for retrieval. If this filter clause is specified then only audits with a field change flagged as true will be selected.

Properties

Name Type Required Restrictions Description
employee boolean false none Employee field change.
nominalDate boolean false none Nominal Date field change.
segmentDefinition boolean false none Segment definition field change.
start boolean false none Start field change.
stop boolean false none Stop field change.

SegmentAuditSelector

{
  "auditActions": {
    "add": true,
    "change": true,
    "delete": true
  },
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "durationRanges": [
    {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "fieldChanges": {
    "employee": true,
    "nominalDate": true,
    "segmentDefinition": true,
    "start": true,
    "stop": true
  },
  "includeDetailSegments": true,
  "includeGeneralSegments": true,
  "includeMemo": true,
  "overlapRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "segmentDefintionIds": [
    "994684565",
    "994687481"
  ],
  "startRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "stopRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "timeStampRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ]
}

Selects a set of segment audits.

Properties

Name Type Required Restrictions Description
auditActions SegmentAuditActions false none Represents audit actions for a segment audit to select for retrieval.
If this filter clause is specified then only audits with an action flagged as true will be selected.
dateRanges [DateRange] false none Detail or general segment audits with a nominal date within any specified range are selected.
durationRanges [DurationRange] false none Detail segment audits with a duration within any specified range are selected.
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.
fieldChanges SegmentAuditFieldChanges false none Represents field changes for a segment audit to select for retrieval.
If this filter clause is specified then only audits with a field change flagged as true will be selected.
includeDetailSegments boolean false none Determines whether detail segment audits are included. If set to false, overrides any of the filtering options for selecting detail segments.
Default is true.
includeGeneralSegments boolean false none Determines whether general segment audits are included. If set to false, overrides any of the filtering options for selecting general segments.
Default is true.
includeMemo boolean false none Determines whether memos are included.
Default value is true.
overlapRanges [DateTimeRange] false none Detail segment audits that overlap any specified range are selected.
segmentDefintionIds [string] false none List of Alvaria-generated unique identifiers for the segment definitions. The definition for these segment definitions can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segmentDefinitions endpoint. Segment audits associated with segment definitions with a matching ID are selected.
startRanges [DateTimeRange] false none Detail segment audits with a start time that falls within any specified range are selected.
stopRanges [DateTimeRange] false none Detail segment audits with a stop time that falls within any specified range are selected.
timeStampRanges [DateTimeRange] false none Segment audits with a timestamp that falls within any specified range are selected

SegmentCategory

{
  "kind": "via#workforceSegmentCategory",
  "id": "975444541",
  "code": "CSV",
  "description": "Customer Service",
  "segmentCategoryDescription": "Customer Service",
  "segmentDefinitionIds": [
    "-9994561656",
    "-9994561254"
  ],
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents a segment category.

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 segment category.
code string false none Unique identifier for this segment category, which can contain up to 30 characters.
description string false none This is a deprecated property.
segmentCategoryDescription string false none Description for this segment category.
segmentDefinitionIds [string] false none List of Alvaria-generated unique identifiers for the segment definitions associated with this segment category. The definitions for these segment definitions can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segmentDefinitions endpoint.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

SegmentCategoryCollection

{
  "kind": "via#workforceSegmentCategoryCollection",
  "segmentCategories": [
    {
      "kind": "via#workforceSegmentCategory",
      "id": "975444541",
      "code": "CSV",
      "description": "Customer Service",
      "segmentCategoryDescription": "Customer Service",
      "segmentDefinitionIds": [
        "-9994561656",
        "-9994561254"
      ],
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for segment categories. The result is a list of segment categories that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching segment categories. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
segmentCategories [SegmentCategory] false none List of segment categories.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SegmentCategorySelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "segmentCategoryIds": [
    "-102147483259",
    "-102147483261"
  ]
}

Selects a set of segment categories by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
segmentCategoryIds [string] false none Segment categories with a matching ID are selected.

SegmentCollection

{
  "kind": "via#workforceSegmentCollection",
  "segments": [
    {
      "kind": "via#workforceScheduleSegment",
      "id": "975444541",
      "employeeId": "-9994561656.0",
      "memo": "Vacation",
      "nominalDate": "2018-04-29",
      "segmentDefinitionId": "-9994561656.0",
      "segmentType": "Detail",
      "startTime": "2008-09-15T15:53:00Z",
      "stopTime": "2008-09-15T15:53:00Z"
    }
  ],
  "totalItems": 500
}

Result of a query for segments. The result is a list of segments that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching segments. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
segments [Segment] false none List of segments.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SegmentDefinition

{
  "kind": "via#workforceSegmentDefinition",
  "id": "975444541",
  "code": "BILL",
  "description": "Billing",
  "color": {
    "htmlColor": "800080",
    "windowsColor": 16777215
  },
  "defaultDuration": 10,
  "fontColor": {
    "htmlColor": "800080",
    "windowsColor": 16777215
  },
  "rank": 3,
  "requiresMemo": false,
  "segmentDefinitionDescription": "Billing",
  "states": [
    {
      "kind": "via#workforceSegmentDefinitionStateAssociation",
      "id": "975444541",
      "stateId": "-9994561656.0"
    }
  ],
  "lastModifiedTime": "2010-12-31T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represent a segemtn definition. Segment definition is a type of work that can be assigned to an employee.

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 segment definition.
code string false none Unique identifier for this segment definition, which can contain up to 30 characters.
description string false none This is a deprecated property.
color Color false none Specific color, which includes a Windows color value and an RGB hexadecimal representation.
defaultDuration integer(int32) false none Duration (in minutes) to display as the initial duration when a user is creating a new segment.
fontColor Color false none Specific color, which includes a Windows color value and an RGB hexadecimal representation.
rank integer(int32) false none Rank of this segment definition compared to all segment definitions. This is used when calculating schedule resolutions and when ordering lists of segment definitions to display them to users.
requiresMemo boolean false none Indicates whether a memo is required. If true, segments associated with this segment definition must include a memo.
segmentDefinitionDescription string false none Description for this segment definition.
states [SegmentDefinitionStateAssociation] false none States associated with this segment definition. States are used when calculating schedule resolution.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

SegmentDefinitionCollection

{
  "kind": "via#workforceSegmentDefinitionCollection",
  "segmentDefinitions": [
    {
      "kind": "via#workforceSegmentDefinition",
      "id": "975444541",
      "code": "BILL",
      "description": "Billing",
      "color": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "defaultDuration": 10,
      "fontColor": {
        "htmlColor": "800080",
        "windowsColor": 16777215
      },
      "rank": 3,
      "requiresMemo": false,
      "segmentDefinitionDescription": "Billing",
      "states": [
        {
          "kind": "via#workforceSegmentDefinitionStateAssociation",
          "id": "975444541",
          "stateId": "-9994561656.0"
        }
      ],
      "lastModifiedTime": "2010-12-31T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for segment definitions. The result contains a list of segment definitions that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to be only a subset of the matching segment definitions. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
segmentDefinitions [SegmentDefinition] false none List of segment definitions.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SegmentDefinitionSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "includeStates": true,
  "partialCodes": [
    "BLU",
    "G"
  ],
  "segmentDefinitionIds": [
    "994684565",
    "994687481"
  ]
}

Selects a set of segment definitions by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
includeStates boolean false none Determines whether associated states are included.
Default value is false.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
segmentDefinitionIds [string] false none Segment definitions with a matching ID are selected.

SegmentDefinitionStateAssociation

{
  "kind": "via#workforceSegmentDefinitionStateAssociation",
  "id": "975444541",
  "stateId": "-9994561656.0"
}

Represents an association between a segment definition and state within a perspective.

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 segment definition.
stateId string false none Alvaria-generated unique identifier for the state associated with this segment definition. The definition for this state can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint.

SegmentSelector

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "durationRanges": [
    {
      "maximumDuration": "15:02:00",
      "minimumDuration": "15:01:00"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "includeDetailSegments": true,
  "includeGeneralSegments": true,
  "overlapRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "segmentDefintionIds": [
    "994684565",
    "994687481"
  ],
  "startRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "stopRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ]
}

Selects a set of segments.

Properties

Name Type Required Restrictions Description
dateRanges [DateRange] false none Detail or General segments with a nominal date within any specified range are selected.
durationRanges [DurationRange] false none Detail segments with a duration within any specified range are selected.
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.
includeDetailSegments boolean false none Indicates whether to include detail segments in the response. If set to false, overrides any of the filtering options for selecting detail segments.
Default is true.
includeGeneralSegments boolean false none Indicates whether to include general segments in the response. If set to false, overrides any of the filtering options for selecting general segments.
Default is true.
overlapRanges [DateTimeRange] false none Detail segments that overlap any specified range are selected.
segmentDefintionIds [string] false none List of Alvaria-generated unique identifiers for the segment definitions. The definition for these segment definitions can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segmentDefinitions endpoint. Segments associated with segment definitions with a matching ID are selected.
startRanges [DateTimeRange] false none Detail segments with a start time that falls within any specified range are selected.
stopRanges [DateTimeRange] false none Detail segments with a stop time that falls within any specified range are selected.

SegmentSummary

{
  "kind": "via#workforceSegmentSummary",
  "employeeId": "-9994561656.0",
  "earliestStartTime": "2018-01-25T23:00:00Z",
  "generalSegmentDefinitionId": "-9994561656.0",
  "latestStopTime": "2018-01-25T23:00:00Z",
  "nominalDate": "2018-04-29",
  "workSegmentDefinitionId": "-9994561656.0"
}

Represents a segment summary. Segemnt summary is a summarized view of an employee's schedule on a given date.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeId string false none Alvaria-generated unique identifier for the employee associated with this segment summary. The definition for this employee can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
earliestStartTime string(date-time) false none Earliest time any segment starts that is associated with this employee and nominal date.
generalSegmentDefinitionId string false none Alvaria-generated unique identifier for the segment definition that is associated with the highest ranking general segment involved in this segment summary. This property will have no value if no general segment exists. The definition for this segment definition can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segmentDefinitions endpoint.
latestStopTime string(date-time) false none Latest time any segment ends that is associated with this employee and nominal date.
nominalDate string(date) false none Nominal date of all the segments included in this summary. Note that the times may occur on a different date than the nominal date.
workSegmentDefinitionId string false none Alvaria-generated unique identifier for the segment definition that is associated with the highest-ranking detail segment that contributes to a non-default state in the perspective designated for the staff perspective purpose. This property will have no value if no segment exists that contributes to a non-default staff perspective state. The definition for this segment definition can be retrieved with the via/v2/organizations/{orgId}/workforce/search/segmentDefinitions endpoint.

SegmentSummaryCollection

{
  "kind": "via#workforceSegmentSummaryCollection",
  "segmentSummaries": [
    {
      "kind": "via#workforceSegmentSummary",
      "employeeId": "-9994561656.0",
      "earliestStartTime": "2018-01-25T23:00:00Z",
      "generalSegmentDefinitionId": "-9994561656.0",
      "latestStopTime": "2018-01-25T23:00:00Z",
      "nominalDate": "2018-04-29",
      "workSegmentDefinitionId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for segment summaries. The result is a list of segment summaries that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching segment summaries. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
segmentSummaries [SegmentSummary] false none List of segment summaries.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SegmentSummarySelector

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  }
}

Selects a set of segment summaries using an EmployeeSelector and determines how to control which ranges of the segment summary record are included in the result.

Properties

Name Type Required Restrictions Description
dateRanges [DateRange] false none Date ranges in which an employee assignment must intersect to be included in the list.
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.

StaffAdjustment

{
  "amount": 100,
  "percent": 100,
  "startDateTime": "2010-12-31T13:18:35Z"
}

Represents a staff adjustment.

Properties

Name Type Required Restrictions Description
amount number(double) false none Amount value for this staff adjustment.
percent number(double) false none Percent value for this staff adjustment.
startDateTime string(date-time) false none Start datetime for this staff adjustment.

StaffAdjustments

{
  "adjustment": [
    {
      "amount": 100,
      "percent": 100,
      "startDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "forecastUnit": "ThirtyMinute"
}

Represents a list of staff adjustments.

Properties

Name Type Required Restrictions Description
adjustment [StaffAdjustment] false none List of staff adjustments associated with these staff adjustments.
forecastUnit string false none Forecast unit for these staff adjustments.

Enumerated Values

Property Value
forecastUnit FifteenMinute
forecastUnit ThirtyMinute

StaffAdjustmentSet

{
  "kind": "via#workforceStaffAdjustmentSet",
  "id": "975444541",
  "code": "test",
  "adjustments": {
    "adjustment": [
      {
        "amount": 100,
        "percent": 100,
        "startDateTime": "2010-12-31T13:18:35Z"
      }
    ],
    "forecastUnit": "ThirtyMinute"
  },
  "staffAdjustmentSetDescription": "Test Staff Adjustment Set",
  "staffGroupId": "-9994561656.0"
}

Represents a staff adjustment set.

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 staff adjustment set.
code string false none Unique identifier for this staff adjustment set, which can contain up to 30 characters.
adjustments StaffAdjustments false none Represents a list of staff adjustments.
staffAdjustmentSetDescription string false none Description for this staff adjustment set.
staffGroupId string false none Alvaria-generated unique identifier for the staff group associated with this staff adjustment set. The definition for this staff group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.

StaffAdjustmentSetCollection

{
  "kind": "via#workforceStaffAdjustmentSetCollection",
  "staffAdjustmentSets": [
    {
      "kind": "via#workforceStaffAdjustmentSet",
      "id": "975444541",
      "code": "test",
      "adjustments": {
        "adjustment": [
          {
            "amount": 100,
            "percent": 100,
            "startDateTime": "2010-12-31T13:18:35Z"
          }
        ],
        "forecastUnit": "ThirtyMinute"
      },
      "staffAdjustmentSetDescription": "Test Staff Adjustment Set",
      "staffGroupId": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for staff adjustment sets. The result is a list of staff adjustment sets that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching staff adjustment sets. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
staffAdjustmentSets [StaffAdjustmentSet] false none List of staff adjustment sets.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

StaffAdjustmentSetSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "dateTimeRanges": [
    {
      "startDateTime": "2010-12-31T13:18:35Z",
      "stopDateTime": "2010-12-31T13:18:35Z"
    }
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "staffAdjustmentSetIds": [
    "994684565",
    "994687481"
  ]
}

Selects a set of staff adjustment sets by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
dateTimeRanges [DateTimeRange] false none Adjustments based on forecast unit with a datetime within any specified range will be include.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
staffAdjustmentSetIds [string] false none Staff adjustment sets with a matching ID are selected.

StaffGroup

{
  "kind": "via#workforceStaffGroup",
  "id": "975444541",
  "code": "CSV",
  "employeeGroupId": "-9994561656.0",
  "staffGroupDescription": "CSV Staff Group",
  "staffGroupParentId": "-9994561656.0",
  "staffGroupTreeId": "-9994561656.0",
  "superStateId": "-9994561656.0",
  "timeZoneId": "-9994561656.0",
  "lastModifiedTime": "2010-12-31T13:13:51Z",
  "lastModifiedBy": "-9994561656.0"
}

Represents a staff group.

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 staff group.
code string false none Unique identifier for this staff group, which can contain up to 30 characters.
employeeGroupId string false none Alvaria-generated unique identifier for the employee group associated with this staff group. The definition for this employee group can be retrieved with the via/v2/organizations/{orgId}/workforce/employeeGroups endpoint.
staffGroupDescription string false none Description for this staff group.
staffGroupParentId string false none Alvaria-generated unique identifier for the staff group associated with this staff group. The definition for this staff group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.
staffGroupTreeId string false none Alvaria-generated unique identifier for the staff group associated with this staff group. The definition for this staff group can be retrieved with the via/v2/organizations/{orgId}/workforce/search/staffGroups endpoint.
superStateId string false none Alvaria-generated unique identifier for the superstate associated with this staff group. The definition for this superstate can be retrieved with the via/v2/organizations/{orgId}/workforce/search/superStates endpoint.
timeZoneId string false none Alvaria-generated unique identifier for the time zone associated with this staff group. The definition for this time zone can be retrieved with the via/v2/organizations/{orgId}/workforce/timeZones endpoint.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

StaffGroupCollection

{
  "kind": "via#workforceStaffGroupCollection",
  "staffGroups": [
    {
      "kind": "via#workforceStaffGroup",
      "id": "975444541",
      "code": "CSV",
      "employeeGroupId": "-9994561656.0",
      "staffGroupDescription": "CSV Staff Group",
      "staffGroupParentId": "-9994561656.0",
      "staffGroupTreeId": "-9994561656.0",
      "superStateId": "-9994561656.0",
      "timeZoneId": "-9994561656.0",
      "lastModifiedTime": "2010-12-31T13:13:51Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for staff groups. The result is a list of staff groups that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching staff groups. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
staffGroups [StaffGroup] false none List of staff groups.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

StaffGroupSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "staffGroupIds": [
    "994684565",
    "994687481"
  ]
}

Selects a set of staff groups by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
staffGroupIds [string] false none Staff groups with a matching ID are selected.

State

{
  "kind": "via#workforceState",
  "id": "975444541",
  "code": "PAID",
  "description": "Paid",
  "color": {
    "htmlColor": "800080",
    "windowsColor": 16777215
  },
  "default": true,
  "fontColor": {
    "htmlColor": "800080",
    "windowsColor": 16777215
  },
  "image": {
    "bmp": "Qk3WAAAAAAAAADYAAAAoAAAACgAAAAUAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAu7u8sLCxcXFzurq7tLS1w8PDu7u85eXm//////////96enxSUlVQUFJsbG5cXF50dHZvb3Hs7e3///////9V//n5+fv7+/v7+/v7+/n5+fv7+9LS03znxpzt1Kzw2/v/////////////////////////+f37bubBgOnJZ+W+///////////////////////////7//xM4LN46MZJ4LKz/w==",
    "png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwgAADsIBFShKgAAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACISURBVBhXY8AF6v8zME2+wrgViLsmX2bcDhXGBKv+MzADFUyefIWpbsplxikMxsbGrEBxZihmsQdiEFtFXt4QqLBp8hWGtEmXGcIZFOXkpivKyx8FYSV5+cVKcnK7gPQcoPhyFRUJUaAmCAAKeAMlIoAK5irKyvoC+SFAtjOIrSItLQNRxcAAAB7MI2nTJYkAAAAAAElFTkSuQmCC"
  },
  "isDefault": true,
  "stateDescription": "Paid"
}

Represents a state. State is a value or effect, that a segment has with respect to a particular perspective. For example, from the Pay perspective, a Break segment might have a state of either Paid or Unpaid.

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 state.
code string false none Unique identifier for this state, which can contain up to 30 characters.
description string false none This is a deprecated property.
color Color false none Specific color, which includes a Windows color value and an RGB hexadecimal representation.
default boolean false none This is a deprecated property.
fontColor Color false none Specific color, which includes a Windows color value and an RGB hexadecimal representation.
image Image false none Bitmap image that includes a BMP and a PNG representation.
isDefault boolean false none Indicates whether this state is the default state for the perspective that contains it.
stateDescription string false none Description for this state.

StateStatistics

{
  "actual": 1,
  "inAdherence": 1,
  "outScheduled": 1,
  "outUnscheduled": 1,
  "percent": 100,
  "scheduled": 1,
  "stateId": "-9994561656.0",
  "totalInOut": 1
}

Represents a state statistics.

Properties

Name Type Required Restrictions Description
actual integer(int32) false none Actual value for this state statistic.
inAdherence integer(int32) false none In adherence value for this state statistic.
outScheduled integer(int32) false none Out scheduled value for this state statistic
outUnscheduled integer(int32) false none Out unscheduled value for this state statistic
percent number(double) false none Percent value for this state statistic
scheduled integer(int32) false none Scheduled value for this state statistic.
stateId string false none Alvaria-generated unique identifier for the state associated with this state statistic. The definition for this state can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint which include states associated with each perspective.
totalInOut integer(int32) false none Total in out value for this state statistic

SuperState

{
  "kind": "via#workforceSuperState",
  "id": "975444541",
  "code": "PAY",
  "description": "Paid",
  "active": true,
  "stateIds": [
    "-9994561656",
    "-9994561254"
  ],
  "superStateDescription": "Paid",
  "lastModifiedTime": "2010-05-11T13:18:35Z",
  "lastModifiedBy": "-9994561656.0"
}

Represent a superstate.

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 superstate.
code string false none Unique identifier for this superstate, which can contain up to 30 characters.
description string false none This is a deprecated property.
active boolean false none Indicates whether this superstate is active. When a superstate is active, a system service running on the Alvaria Workforce Management application server continually accumulates summary data and updates the tallies that are based on it.
stateIds [string] false none List of Alvaria-generated unique identifiers for the states associated with this superstate. The definition for these states can be retrieved with the via/v2/organizations/{orgId}/workforce/search/perspectives endpoint which include states associated with each perspective.
superStateDescription string false none Description for this superstate.
lastModifiedTime string(date-time) false none Timestamp that indicates when this entity was last modified.
lastModifiedBy string false none Alvaria-generated unique identifier for the user who last modified this entity.

SuperStateCollection

{
  "kind": "via#workforceSuperStateCollection",
  "superStates": [
    {
      "kind": "via#workforceSuperState",
      "id": "975444541",
      "code": "PAY",
      "description": "Paid",
      "active": true,
      "stateIds": [
        "-9994561656",
        "-9994561254"
      ],
      "superStateDescription": "Paid",
      "lastModifiedTime": "2010-05-11T13:18:35Z",
      "lastModifiedBy": "-9994561656.0"
    }
  ],
  "totalItems": 500
}

Result of a query for superstates. The result is a list of superstates that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching superstates. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
superStates [SuperState] false none List of superstates.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SuperStateHour

{
  "kind": "via#workforceSuperStateHour",
  "employeeId": "-9994561656.0",
  "minutes": 480,
  "nominalDate": "2018-04-29",
  "superStateId": "-9994561656.0",
  "lastModifiedTime": "2012-02-15T12:29:42Z"
}

Represents a superstate hour.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
employeeId string false none Alvaria-generated unique identifier for the employee associated with this superstate hour. The definition for this employee can be retrieved with the via/v2/organizations/{orgId}/workforce/search/employees endpoint.
minutes integer(int32) false none Number of minutes this employee contributes to the superstate on this nominal date.
nominalDate string(date) false none Date on which this superstate hour is calculated.
superStateId string false none Alvaria-generated unique identifier for the superstate associated with this superstate hour. The definition for this superstate can be retrieved with the via/v2/organizations/{orgId}/workforce/search/superstates endpoint.
lastModifiedTime string(date-time) false none Time when this superstate hour was most recently calculated.

SuperStateHourCollection

{
  "kind": "via#workforceSuperStateHourCollection",
  "superStateHours": [
    {
      "kind": "via#workforceSuperStateHour",
      "employeeId": "-9994561656.0",
      "minutes": 480,
      "nominalDate": "2018-04-29",
      "superStateId": "-9994561656.0",
      "lastModifiedTime": "2012-02-15T12:29:42Z"
    }
  ],
  "totalItems": 500
}

Result of a query for superstate hours. The result is a list of superstate hours that were selected by the selector, but pagination and selector limits, as well as system limits, may cause the list to contain only a subset of the matching superstate hours. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
superStateHours [SuperStateHour] false none List of superstate hours.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

SuperStateHourSelector

{
  "dateRanges": [
    {
      "startDate": "2000-12-30",
      "stopDate": "2000-12-30"
    }
  ],
  "employeeSelector": {
    "employeeFilter": {
      "employeeGroupFilter": {
        "date": "2000-12-30",
        "employeeGroupIds": [
          "-9994561656",
          "-9994561254"
        ]
      },
      "extraFieldFilter": {
        "extraFieldId": 2387932847,
        "operator": "EqualTo",
        "value": "EMP001"
      },
      "hireDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      },
      "segmentFilter": {
        "duration": {
          "maximumDuration": "15:02:00",
          "minimumDuration": "15:01:00"
        },
        "segmentDefinitionId": 66898,
        "start": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        },
        "stop": {
          "startDateTime": "2010-12-31T13:18:35Z",
          "stopDateTime": "2010-12-31T13:18:35Z"
        }
      },
      "skillFilter": {
        "date": "2000-12-30",
        "priorityRange": {
          "maximum": 1,
          "minimum": 1
        },
        "skillId": 1489356
      },
      "termDateFilter": {
        "startDate": "2000-12-30",
        "stopDate": "2000-12-30"
      }
    },
    "employeeIdentifiers": [
      "EMP001",
      "EMP002"
    ],
    "employeeIds": [
      "-9994561656",
      "-9994561254"
    ],
    "employeeNames": [
      "Ryan, J",
      "Abernathy"
    ],
    "hideInactiveEmployees": true,
    "names": [
      "Ryan, J",
      "Abernathy"
    ],
    "respectFilterProfile": true
  },
  "superStateIds": [
    "-979999997941",
    "-979999997940"
  ]
}

Selects a set of superstate hours using an employeeSelector and determines how to control which ranges of the superstate hour are included in the result.

Properties

Name Type Required Restrictions Description
dateRanges [DateRange] false none Date ranges in which an employee assignment must intersect to be included in the list.
employeeSelector EmployeeSelector false none Selects employees by name, ID, employee identifier, or by a complex filter.
* Employees are selected by
+ employee IDs (a unique identifier that is not usually exposed to end users)
+ employee identifiers (a unique human-readable identifier specified by an end user)
+ employee names (partial names in the format "last_name, first_name")
+ employee filter
* These four parameters are combined together using the OR operator when selecting matching employee records.
* If none of the four parameters are supplied, then all employees are selected.
superStateIds [string] false none List of Alvaria-generated unique identifiers for the superstates. The definition for these superstates can be retrieved with the via/v2/organizations/{orgId}/workforce/search/superStates endpoint. Superstate hours associated with superstates with a matching ID are selected.

SuperStateSelector

{
  "codes": [
    "BLUE",
    "GREEN"
  ],
  "partialCodes": [
    "BLU",
    "G"
  ],
  "superStateIds": [
    "-979999997941",
    "-979999997940"
  ]
}

Selects a set of superstates by filtering on the code and ID.

Properties

Name Type Required Restrictions Description
codes [string] false none Entities with a code that exactly matches a code in this list are selected.
partialCodes [string] false none Entities with a code that starts with any partial code in this list are selected.
superStateIds [string] false none Superstates with a matching ID are selected.

SystemInformation

{
  "permanentCloseoutDate": "2018-04-29",
  "segmentCutoffDate": "2018-04-29"
}

Represents a system information.

Properties

Name Type Required Restrictions Description
permanentCloseoutDate string(date) false none No superstate hour or schedule summary data exists before this date.
segmentCutoffDate string(date) false none No detail or general segment data exists before this date. Before this date, superstate hours and schedule summary data may still exist.

SystemParameter

{
  "kind": "via#workforceSystemParameter",
  "systemParameterName": "FTE_DFN",
  "value": "41.40"
}

Represents a Workforce Management system parameter.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
systemParameterName string false none System parameter name, which can contain up to 30 characters.
value string false none Current value of the system parameter.

SystemParameterCollection

{
  "kind": "via#workforceSystemParameterCollection",
  "systemParameters": [
    {
      "kind": "via#workforceSystemParameter",
      "systemParameterName": "FTE_DFN",
      "value": "41.40"
    }
  ],
  "totalItems": 500
}

Result of a query for system parameters. The result is a list of system parameters that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching system parameters. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
systemParameters [SystemParameter] false none List of system parameters.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.

TimeRange

{
  "startTime": "23:00:00",
  "stopTime": "23:00:00"
}

Range of times.

Properties

Name Type Required Restrictions Description
startTime string true none Start time of the range.
stopTime string true none Stop time of the range.

TimeZone

{
  "kind": "via#workforceTimeZone",
  "id": "975444541",
  "name": "Pacific Standard Time",
  "displayName": "(GMT- 08:00) Pacific Time",
  "memo": "Los Angeles, San Diego, Seattle",
  "timeZoneName": "US_PST"
}

Represents a time zone.

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 time zone.
name string false none This is a deprecated property.
displayName string false none String that describes this time zone, including representative cities and offset from UTC.
memo string false none Description for this time zone.
timeZoneName string false none Unique identifier for this time zone, which can contain up to 30 characters.

TimeZoneCollection

{
  "kind": "via#workforceTimeZoneCollection",
  "timeZones": [
    {
      "kind": "via#workforceTimeZone",
      "id": "975444541",
      "name": "Pacific Standard Time",
      "displayName": "(GMT- 08:00) Pacific Time",
      "memo": "Los Angeles, San Diego, Seattle",
      "timeZoneName": "US_PST"
    }
  ],
  "totalItems": 500
}

Result of a query for time zones. The result is a list of time zones that were selected, but pagination limits, as well as system limits, may cause the list to contain only a subset of the matching time zones. This can be determined by examining totalItems.

Properties

Name Type Required Restrictions Description
kind string false none Identifier used by Alvaria™ Cloud components to serialize the payload of the results.
timeZones [TimeZone] false none List of time zones.
totalItems integer(int32) false none Indicates the total number of items within the result set, which may be less than
the number of results actually returned.