Providing you with the resources you need to build apps to interact with Zellis HCM Cloud
Our APIs support the ability to bulk load data using a specific call construct. Bulk load is only available against a predetermined list of APIs.
API call syntax – below is an example API call. Note that the URL is generic in that, regardless of where you load the data, the same call is used in all cases. The difference between the calls is where you specify the UploadType.
As an example, when bulk uploading to Workers, the call should be constructed using the /BulkUpload extension with a body as follows:
{
    "UploadType": "Workers",
    "Bulk": [
        {
            Worker_Request
        }
    ]
}
It is critical to note that when loading via the bulk request, you will receive a "200" Success response even if the data is only partially loaded as the initial response is to indicate you have successfully started to load data against the API. Please take note of the following example scenarios that relate to TemporaryPayElements calls.
Case #1: When doing a Bulk load, if ALL data in the "Bulk" array is valid (passed all business validations), then this will be a 200 response, and will load ALL data on each array slot as expected. The 200 response will have the regular success message of;
"Success": {"Message": "Temporary Payment data has been loaded."}
Case #2: When doing a Bulk load, if the data in the "Bulk" array is a mixture of valid and invalid records (for example, 5 array slots contain invalid data and 10 array slots have valid data), then this will still be a 200 response. Then it will also show the errors for the slots that have errors. Also, it will process and load all valid data. The 200 response will have a slightly different success message in the response;
"Success": {"Message": "Temporary Payment data has been partially loaded."}
Case #3: When doing a Bulk load, if ALL data in the "Bulk" array slot are invalid (failed all business validations), then this will be a 400 response. As expected, none of the data will be loaded and all errors will be shown. As per expectation, the 400 response will NOT have any success message.
When a consumer is doing a Bulk Load via ZIP, it is important to code the API Client to not only assume a HTTP 200 is a full success, but also either check the Success Message or alternatively just always check for the Errors Array object.
As of HCM 9.3, below is a list of endpoints that support bulk loads:
AbsenceDailyDetails
AbsenceHeaders
FixedPayElements
MyViewNotifications
OperatorMessages
PostToPostLinkages
PostToStructureLinkages
StructToHierarchyLinkages
TemporaryPayElements
Workers
NOTE: BulkUpload will support the same methods that the original API supports, as noted in our documentation. So, if an API only supports the PATCH method, then you will only be able to use PATCH with the /BulkUpload call as well.

740 Waterside Drive, Aztec West, Almondsbury, Bristol, BS32 4UF
0800 0420315
tellmemore@zellis.com
Providing you with all the tools you need to integrate third party applications with Zellis HCM Cloud.