This article explains how and why to run API calls to retrieve Custom Field Indexes when configuring the UKG Ready (Kronos) integration in Integration Manager (IM).
🧠 Why Use API Calls?
Integration Manager requires four Custom Field Indexes for the UKG Ready integration to function properly:
Report Custom Field Index
Status Custom Field Index
Message Custom Field Index
Package Custom Field Index
These values are often provided by the UKG Ready consultant, but there is a known mismatch:
UKG UI indexes start at 1
API indexes start at 0
🧮 For example:
If the consultant refers to “System Index Field 1”, you must enter index 0 in Integration Manager.
If the consultant is unsure or you're seeing errors during testing, we recommend confirming these values by running the API calls yourself.
📋 When Should I Run These?
If the consultant can’t confirm the correct API index values
If test orders fail to submit, or statuses are returned incorrectly
If you want to confidently map the correct field values
🔧 How to Run the API Calls
You’ll use three API calls, which differ slightly depending on whether the client is using the Applicant or Employee module.
🔑 Step 1: Get Bearer Token
curl --location 'https://secure4.saashr.com/ta/rest/v1/login' \
--header 'Content-Type: application/json' \
--header 'Api-Key: [API_KEY]' \
--data-raw '{
"credentials": {
"username": "[API_USERNAME]",
"password": "[API_PASSWORD]",
"company": "[COMPANY_ID]"
}
}'
This returns a Bearer Token in the response, which you will use to authenticate your next two GET requests.
👤 If Using Applicant Module
📥 Step 2: Pull the Saved Report
curl --location 'https://secure3.saashr.com/ta/rest/v1/report/saved/[REPORT_ID]' \
--header 'Authentication: Bearer [BEARER_TOKEN]' \
--header 'Accept: application/xml'
This lists applicants tied to the saved report. Use an Applicant ID from the response for the next step.
🔎 Step 3: Get the Applicant’s Custom Fields
curl --location 'https://secure3.saashr.com/ta/rest/v2/companies/[COMPANY_ID]/applicants/[APPLICANT_ID]' \
--header 'Authentication: Bearer [BEARER_TOKEN]' \
--header 'Accept: application/json'
Look for the "applicant_custom_fields" section in the response.
Plug these values into IM as the Report/Status/Message/Package Custom Field Index values.
👤 If Using Employee Module
📥 Step 2: Pull the Saved Report
curl --location 'https://secure3.saashr.com/ta/rest/v1/report/saved/[REPORT_ID]' \
--header 'Authentication: Bearer [BEARER_TOKEN]' \
--header 'Accept: application/xml'
🔎 Step 3: Get the Employee’s Custom Fields
curl --location 'https://secure4.saashr.com/ta/rest/v2/companies/[COMPANY_ID]/employees/[EMPLOYEE_ID]' \
--header 'Authentication: Bearer [BEARER_TOKEN]' \
--header 'Accept: application/json'
Look for the "account_extra_fields" section in the response.
Plug these values into IM as the Report/Status/Message/Package Custom Field Index values.
✅ Tips for Success
Ask the consultant first — they may have the index numbers handy
Always subtract 1 if using "System values" from the UKG UI
Use this API method if you're unsure or troubleshooting errors
You only need to do this once per client, unless they make any changes to their custom fields