Introduction

This document describes the SmartSync APIs that use the industry standard REST (Representational State Transfer) interface. This allows a secure and easy way to exchange data between NICE WFM and external applications.

Customers that use the SmartSync REST APIs must have the necessary expertise to develop their custom integration. NICE is responsible that the published APIs perform as described. However NICE cannot provide support directly for issues with customer-developed integrations.

Scope of this Guide

Software Version

This guide is updated for NICE Workforce Management Release 7.5 and later.

What is included in this guide?

This guide covers these main topics:

  • SmartSync RESTful APIs and ERROR response

  • Details for the SmartSync REST APIs

Overview

The APIs in this document are RESTful APIs and exchange JSON, XML, and Pipe delimited content. These APIs are protected through the JSESSIONID.

The REST APIs in this document use the Login API to authenticate the user. This API calls the WFM user endpoint to get the JSESSIONID (jsessionId), which is required to be sent as part of the header in all the REST API calls.

Authentication URL: https://<domain or IP>/SMARTSync/services/rs/users/v1/login

This returns the jsessionId which needs to be passed on to subsequent requests as the header cookie.

SCIM compliant APIs can authenticate using either the jsessionId or a bearer token.

  • If you log in via the authentication endpoint as noted above, a cookie containing the jsessionId will be appended to your API calls and will be used to authenticate you.

  • If you want to use the bearer token, you must use a bearer token call to retrieve the token, and append that token ID in your headers for your API calls.

The APIs described below contain:

  • the web service call

  • the request methods available

  • a description of the call

  • the JSON content required for the call

  • the data types required for a JSON element

  • an example of JSON content

  • the HTTP Response codes and their meaning

  • output examples for the output formats valid with each Exporter API

The APIs use a version as part of the URL. For example, /SMARTSync/services/rs/users/v1/login.

ERROR Response

In most cases the web service calls return an HttpStatus in the 200’s, indicating the operations are successful. In the event of an error, an HTTP error status code is returned along with a JSON payload with information similar to the following:

JSON Key

Value

status

The HTTP status code generated.

code

An internal error code.

message

Information pertaining to the error.

developerMessage

Developer message content for more information.

moreInfo

Additional information.

JSON: {"status":400,"code":14506,"message":"Required fields not present","developerMessage":"Some or all JSON content is missing. Unable to process request","moreInfo":""}

Output from Exporter APIs

Each Exporter endpoint specification lists the output format options it supports (JSON, PIPE, and/or XML). Samples of the valid output combinations are provided with each, as well.