SmartSync Export APIs

This section introduces the APIs for SmartSync Exporters, which let you use WFM’s original file-based SmartSync Exporters through the REST interface. These APIs let you create, execute, and retrieve results from SmartSyncs without needing to access the server console or filesystem. These APIs are useful if your WFM is hosted in the NICE cloud and do not have access to the hosted server’s filesystem or console.

The SmartSync Exporter APIs support JSON, XML, and pipe-delimited output.

These exporters are submitted and processed asynchronously, managed by a queuing strategy, with maximum concurrent tasks limits configured by WFM tuning according to system sizing.

  • To ensure security, all endpoints require a jsessionId for an authenticated user. This jsessionId is provided by the Login API endpoint and it must be included as the header cookie in all subsequent requests.
    The Login endpoint URL is https://<domain or IP>/SMARTSync/services/rs/users/v1/login.

  • To populate export requests, the GET entities endpoint should be used to enumerate required entities such as MUs, BUs, and CTs that may be selected by the exporters in their muIds, buIds, and ctIds array parameters. The exporters do not support to specify All for those entity types. GET entities returns only entity values for which the exporter's login user has at least View permission. If an export requests any entities for which the user does not have at least View permission, then the endpoint fails the export with an error response, and the export will not be submitted. The list of non-permitted entities requested will be returned with the error.

  • Each exporter returns a unique jobId value for later use to check status and retrieve results.

  • The GET status endpoint can be used at any time to query the status of a specific job by supplying the jobId value. The jobID is a unique oid value returned by each exporter call. Or you can get the status of all current jobs assigned to your logged-in user by calling GET status with no jobId.

  • When a job has ended with a COMPLETED_SUCCESSFULLY status, results are obtained by calling the GET result endpoint for a specific jobId.

Results are retained in the system for 24 hours after job completion. Data will be deleted afterward, and is expected to be removed within a maximum 48 hours after job completion. Deleted results are not recoverable.