UKG Pro HCM
Overview
The UKG Pro HCM connector enables your Leena AI Agents to integrate with your organization's UKG Pro Human Capital Management platform, facilitating automated employee data management, payroll operations, and HR workflows.
UKG Pro HCM is a comprehensive human capital management solution that provides end-to-end HR, payroll, and workforce management capabilities. The UKG Pro HCM connector allows Leena AI to automate HR workflows, retrieve employee information, manage compensation data, and process employee lifecycle events seamlessly.
API Details
Leena AI integrates with UKG Pro HCM via REST APIs.
Documentation link: UKG Pro HCM API Documentation
Setup
The UKG Pro HCM connector uses Basic Authentication with username and password credentials.
Prerequisites
Before setting up the UKG Pro HCM connector, ensure you have:
- Administrator access to your UKG Pro HCM system
- Service account credentials with appropriate API permissions
- US Customer API Key from UKG Pro
- Access to your Leena AI workspace with connector management permissions
Get credentials
Here is how to obtain credentials for UKG Pro HCM:
- Log in to UKG Pro HCM (Ensure you're signed in as an admin)
- Navigate to System Configuration
- Create or identify a service account with the following permissions:
- Personnel API access
- Payroll API access
- Import Tool access
- Obtain your US Customer API Key:
- Contact your UKG Pro account administrator
- Request the US-CUSTOMER-API-KEY for API integrations
- Save this key securely as it will be needed during connector configuration
- Note down the service account credentials (username and password)
Add connection
Here is how to add a connection on Leena AI:
-
Log in to your Leena AI workspace
-
Navigate to Settings > Integrations
-
Search for "UKG Pro HCM" and select it from the list to add its new connector
-
Start configuring the connector
- Username: Your UKG Pro HCM service account username
- Password: Your UKG Pro HCM service account password
- US Customer API Key: Your US-CUSTOMER-API-KEY provided by UKG Pro
- Base URL: Your UKG Pro service endpoint (Pre-filled as https://servicet.ultipro.com)
-
Test the connection
- Click Test Connection to verify credentials
- Ensure all authentication parameters are correct
-
Save the connector configuration
Actions
The following actions are supported for the UKG Pro HCM connector:
Get Employee Contacts
Retrieves contact information for a specific employee including emergency contacts, dependents, and beneficiaries. The Agent can leverage this action to fetch comprehensive contact details for any employee in the organization.
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee ID | The unique employee identifier (e.g., EB5KU3000020) |
Response
The action returns contact information including:
- Contact details (name, address, phone numbers)
- Relationship information (emergency contacts, dependents, beneficiaries)
- COBRA information and eligibility status
- Contact identifiers and status information
Get Employee Details
Retrieves comprehensive person details including personal information, demographics, and contact details with pagination support. This action can be leveraged by Leena AI Orchestrator/Agent to get detailed employee information with filtering capabilities. Here are some common use cases:
-
Employee Lookup: Find employee by ID, email, or last name
-
Bulk Employee Data: Retrieve multiple employee records with pagination
-
Profile Information: Access complete employee demographic and contact information
-
Data Auditing: Review employee information for compliance purposes
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
None (all parameters are optional)
Optional
| Name | Description |
|---|---|
| Employee ID | Filter by specific employee ID |
| Per Page | Records per page (1-1000, default: 100) |
| Page Number | Page number for pagination (default: 1) |
| Last Name | Filter by employee last name |
| Email Address | Filter by employee email address |
Here is a sample JSON input:
{
"employeeId": "EB5KU3000020",
"per_Page": 100,
"page": 1
}Response
The action returns comprehensive employee details including:
- Personal information (name, date of birth, gender, SSN)
- Contact information (email, phone, address)
- Employment identifiers and company information
- Health and demographic details
- I-9 verification and work authorization status
- COBRA status and military service information
Get Employee Payroll Data
Retrieves employee pay statements for a specified date range including earnings, deductions, and tax information. This action enables comprehensive payroll data access for reporting, analysis, and employee inquiries. Here are some common use cases:
-
Pay Statement Retrieval: Access detailed pay information for specific periods
-
Year-to-Date Analysis: Review cumulative earnings and deductions
-
Tax Information: Retrieve federal and state tax withholding details
-
Deduction Tracking: Monitor benefit deductions and contributions
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Start Date | Start date in YYYY-MM-DD format |
| End Date | End date in YYYY-MM-DD format |
| Employee ID (EEID) | Employee identifier |
Optional
| Name | Description |
|---|---|
| Page | Page number for pagination (default: 1) |
| Per Page | Records per page (1-10000, default: 10000) |
Here is a sample JSON input:
{
"startDate": "2024-01-01",
"endDate": "2024-12-31",
"employeeIdentifier": {
"eeid": "EB5KU3000020"
},
"page": 1,
"per_page": 10000
}Response
The action returns detailed payroll information including:
- Earnings breakdown by pay code (regular, overtime, holiday)
- Deductions (insurance, retirement, garnishments)
- Tax withholdings (federal, state, local)
- Net pay and payment method details
- Year-to-date totals for all categories
- Pay period and organizational information
Get Compensation Details
Retrieves compensation information for an employee including salary, pay rate, and compensation history. This action provides access to current compensation structures and payment details.
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee ID | The employee ID (e.g., EIDKU3000020) |
Response
Upon successful retrieval, the action returns compensation details including:
- Annual salary and hourly pay rate
- Weekly and pay period pay rates
- Job and salary grade information
- Pay group and schedule details
- Job change reason and dates
- Performance review information
Get Employment Details
Retrieves employment details for an employee including job information, status, hire date, and organizational structure. This action provides comprehensive employment relationship data.
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee ID | The employee ID (e.g., EID5KU3000020) |
Response
The action returns employment information including:
- Job codes and organizational hierarchy
- Employment dates (hire, termination, dates in position)
- Employment status and type (full-time/part-time)
- Supervisor and work location information
- Benefit seniority and scheduled hours
- Pay group and retirement dates
Get Employee Changes
Retrieves a log of changes made to employee records with pagination support. Useful for auditing and tracking employee data modifications. Here are some common use cases:
-
Audit Trail: Track all modifications to employee records
-
Compliance Reporting: Document changes for regulatory requirements
-
Data Verification: Review recent updates to employee information
-
Change History: Analyze patterns in employee data updates
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
None (all parameters are optional)
Optional
| Name | Description |
|---|---|
| Employee ID | Filter by specific employee ID |
| Page | Page number (default: 1) |
| Per Page | Records per page (default: 100) |
Here is a sample JSON input:
{
"employeeId": "EB5KU3000020",
"page": 1,
"per_page": 100
}Response
The action returns a log of employee changes including:
- Modified employee information
- Change timestamps
- Current employment status and details
- Updated compensation information
- Modified organizational assignments
Get Import Tool Status
Checks the status of an import transaction submitted via the import tool. Essential for tracking asynchronous update operations. This action allows monitoring of bulk data imports and updates to ensure successful processing.
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Transaction ID | The transaction ID returned from an import operation (e.g., 3c64b062-96cf-4273-9072-0c85a743d513) |
Response
Upon successful status check, the action returns:
- Transaction staging ID
- Processing dates (file process, service submittal)
- Employee information
- Transaction status (Passed, Failed, Processing)
- Transaction type description
- Associated file name
- Status messages and error details (if applicable)
Update Employee Data
Updates employee name, address, contact information, and marital status using UKG Pro's import tool with XML-based transactions. The Agent can leverage this action to modify employee personal and contact information. Here are some common use cases:
-
Address Updates: Change employee residential address
-
Contact Information: Update phone numbers and email addresses
-
Name Changes: Process legal name changes
-
Marital Status: Update employee marital status records
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee Number | Employee number |
| Company Code | Company code |
Optional
| Name | Description |
|---|---|
| First Name | Employee first name |
| Middle Name | Employee middle name |
| Last Name | Employee last name |
| Preferred Name | Employee preferred name |
| Email Address | Primary email address |
| Alternate Email | Secondary email address |
| Marital Status Code | Marital status code |
| Phone Home Number | Home phone number |
| Phone Home Country Code | Home phone country code |
| Phone Business Number | Business phone number |
| Phone Business Extension | Business phone extension |
| Phone Business Country Code | Business phone country code |
| Address Line 1 | Street address line 1 |
| Address Line 2 | Street address line 2 |
| Address City | City |
| Address State Code | State code |
| Address Country Code | Country code |
| Address County | County |
| Address Zip Code | Zip/postal code |
Here is a sample JSON input:
{
"employeeNumber": "321543238",
"companyCode": "HDLBX",
"firstName": "John",
"lastName": "Smith",
"emailAddress": "[email protected]",
"phoneHomeNumber": "5551234567",
"addressLine1": "123 Main Street",
"addressCity": "Atlanta",
"addressState": "GA",
"addressZipCode": "30318"
}Response
Upon successful update, the action returns:
- Staging ID for the import transaction
- Transaction creation timestamp
- Generated file name for tracking
- Transaction status
Update Employee SSN
Updates employee Social Security Number and national ID information. This action handles sensitive employee identification data updates.
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee Number | Employee number |
| Company Code | Company code |
| SSN | Social Security Number (e.g., 123456789) |
Optional
| Name | Description |
|---|---|
| National ID | National identification number |
| National ID Expire Date | National ID expiration date (MM/DD/YYYY) |
Here is a sample JSON input:
{
"employeeNumber": "321543238",
"companyCode": "HDLBX",
"ssn": "123456789",
"nationalId": "123456789",
"nationalIdExpireDate": "12/31/2030"
}Response
Upon successful update, the action returns:
- Staging ID for the import transaction
- Transaction creation timestamp
- Generated file name for tracking
- Transaction status
Update Employee Private Information
Updates sensitive employee information including date of birth and gender. This action handles confidential personal information updates.
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee Number | Employee number |
| Company Code | Company code |
Optional
| Name | Description |
|---|---|
| Date of Birth | Date of birth (MM/DD/YYYY) |
| Gender Code | Gender identification code |
Here is a sample JSON input:
{
"employeeNumber": "321543238",
"companyCode": "HDLBX",
"dateOfBirth": "01/15/1985",
"genderCode": "F"
}Response
Upon successful update, the action returns:
- Staging ID for the import transaction
- Transaction creation timestamp
- Generated file name for tracking
- Transaction status
Terminate Employee
Terminates an employee with comprehensive termination details including COBRA information, severance eligibility, and ROE data. The Agent can leverage this action to process employee terminations with complete compliance documentation. Here are some common use cases:
-
Employee Separation: Process standard employee terminations
-
Compliance Documentation: Record all required termination details
-
COBRA Management: Handle COBRA qualifying events
-
Final Pay Processing: Configure final payment dates and methods
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee Number | Employee number |
| Company Code | Company code |
Optional
| Name | Description |
|---|---|
| Date of Termination | Official termination date |
| Last Date Worked | Employee's last working day |
| Date Paid Thru | Final date for payment processing |
| Termination Reason Code | Code indicating termination reason |
| Termination Note | Additional notes about termination |
| Eligible for Rehire | Rehire eligibility status |
| Eligible for Severance | Severance package eligibility |
| Direct Deposit Inactive | Deactivate direct deposit |
| Inactivate Auto Pay | Disable automatic payment processing |
| Is COBRA Qualifying | Whether termination qualifies for COBRA |
| COBRA Date of Event | Date of COBRA qualifying event |
| COBRA Reason | Reason for COBRA qualification |
| ROE Issue Reason | Record of Employment issue reason |
Here is a sample JSON input:
{
"employeeNumber": "321543238",
"companyCode": "HDLBX",
"dateOfTermination": "12/31/2024",
"lastDateWorked": "12/31/2024",
"datePaidThru": "12/31/2024",
"termReasonCode": "VOL",
"eligibleForRehire": "Y",
"eligibleForSeverance": "N",
"isCobraQualifying": "Y",
"cobraDateOfEvent": "12/31/2024",
"sendUpdates": "all"
}Response
Upon successful termination processing, the action returns:
- Staging ID for the termination transaction
- Transaction creation timestamp
- Generated file name for tracking
- Transaction status
Update Job Salary
Updates employee job and salary information including job title, compensation, pay rates, organizational structure, and supervisor assignment using UKG Pro's import tool with XML-based transactions. The Agent can leverage this action to modify employee compensation and job-related information. Here are some common use cases:
-
Salary Adjustments: Process pay rate changes and annual salary updates
-
Job Changes: Update job codes, titles, and organizational assignments
-
Promotions: Record promotions with updated compensation
-
Supervisor Changes: Assign new supervisors to employees
-
Organizational Restructuring: Update org level assignments
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee Number | Employee number (e.g., 102539647) |
| Company Code | Company code (e.g., USG_1) |
| Effective Date | Effective date in MM/DD/YYYY format (e.g., 12/01/2024) |
| Job Change Reason | Job change reason code (dynamically loaded via async hook) |
Optional
| Name | Description |
|---|---|
| Alternate Job Title | Alternate job title |
| Employee Type Code | Employee type code |
| Full Or Part Time Code | Full or Part Time - F (Full Time) or P (Part Time) |
| Job Code | Job code |
| Hire Source Code | Hire source code |
| Hourly Pay Rate | Hourly pay rate (e.g., 17.00) |
| Salary Or Hourly | Salary or Hourly - S (Salary) or H (Hourly) |
| Yearly Pay Rate | Annual salary |
| Scheduled Work Hours | Scheduled work hours |
| Weekly Hours | Weekly hours |
| Payments Per Year | Number of payments per year |
| Other Rate 1 | Additional pay rate 1 |
| Other Rate 2 | Additional pay rate 2 |
| Other Rate 3 | Additional pay rate 3 |
| Other Rate 4 | Additional pay rate 4 |
| Currency Code | Currency code |
| Is Autopaid | Is autopaid - Y or N |
| Is Seasonal | Is seasonal worker - Y or N |
| Is Agricultural | Is agricultural worker - Y or N |
| Is Youth Training | Is youth training - Y or N |
| Is Direct Labor | Is direct labor - Y or N |
| Is Promotion | Is promotion - Y or N |
| Is Transfer | Is transfer - Y or N |
| Org Level 1 Code | Organization level 1 code |
| Org Level 2 Code | Organization level 2 code |
| Org Level 3 Code | Organization level 3 code |
| Org Level 4 Code | Organization level 4 code |
| Project Code | Project code |
| Shift Code | Shift code |
| Shift Group | Shift group code |
| Supervisor ID | Supervisor ID |
| Supervisor Company Code | Supervisor company code (required if Supervisor ID is provided) |
| Labor Union Local Code | Labor union local code |
| Labor Union National Code | Labor union national code |
| Pay Group | Pay group |
| Pay Scale | Pay scale code |
| Pay Step | Salary step |
| Position Code | Position code |
| Position Status | Position status |
| ROE Issue Code | ROE issue reason |
Here is a sample JSON input:
{
"employeeNumber": "102539647",
"companyCode": "USG_1",
"effectiveDate": "12/01/2024",
"jobChangeReason": "PROMO",
"hourlyPayRate": 25.00,
"salaryOrHourly": "H",
"jobCode": "ENGR02",
"orgLevel1Code": "TECH",
"orgLevel2Code": "DEV",
"isPromotion": "Y",
"supervisorId": "1HHN36000080",
"supervisorCompanyCode": "USG_1"
}Response
Upon successful update, the action returns:
- Staging ID for the import transaction
- Transaction creation timestamp
- Generated file name for tracking
- Transaction status
Update Work Location
Updates employee work location and tax information for both USA and Canada. This action handles country-specific tax settings and location assignments using UKG Pro's import tool with XML-based transactions. The Agent can leverage this action to modify employee work locations and associated tax configurations. Here are some common use cases:
-
Location Transfers: Update employee work location assignments
-
Tax Configuration: Modify state/provincial tax withholding settings
-
Multi-location Management: Manage primary and secondary work locations
-
Cross-border Assignments: Handle USA and Canada location updates
-
Tax Exemption Updates: Configure tax exemption and allowance settings
Input Parameters
Here are the input parameters required to set up this action:
Mandatory
| Name | Description |
|---|---|
| Employee Number | Employee number (e.g., 571957925) |
| Company Code | Company code (e.g., USG_2) |
| Country | Country - USA or CAN |
USA-Specific Required
| Name | Description |
|---|---|
| Work In Location Code | Work location code (filtered by USA) |
USA-Specific Optional
| Name | Description |
|---|---|
| Work In Is Primary Location | Is primary location - Y or N |
| Work In Is Active Location | Is active location - Y or N |
| Work In Filing Status Code | Filing status code |
| Work In Total Allowances | Total allowances |
| Work In Additional Allowances | Additional allowances |
| Work In Additional Amount Withheld | Additional amount withheld |
| Work In Employee Claims Exemption | Employee claims exemption |
| Exempt From Tax | Exempt from tax |
| Work In Lock In Letter | Lock-in letter |
| Work In State Tax Plan | State tax plan |
| Work In State Tax Disability Plan | State tax disability plan |
| Work In State Geographic Code | State geographic code |
| Work In State Occupational Code | State occupational code |
| Work In Not Subject To Tax | Not subject to tax |
| Work In Reciprocal Agreement | Reciprocal agreement |
| Local Work In Tax Resident Status | Local tax resident status |
| Local Work In Occ Not Subject To Tax | Local occupational not subject to tax |
| Local Work In Occ Claims Exemption | Local occupational claims exemption |
| Local Work In Oth Not Subject To Tax | Local other not subject to tax |
| Local Work In Oth Claims Exemption | Local other claims exemption |
| Local Work In WC Not Subject To Tax | Local WC not subject to tax |
| Local Work In WC Claims Exemption | Local WC claims exemption |
| Local Work In Not Subject To Tax | Local not subject to tax |
| Local Work In Claims Exemption | Local claims exemption |
| Work In Working From Home | Working from home |
| Work In Disable State Reciprocity | Disable state reciprocity |
Canada-Specific Required
| Name | Description |
|---|---|
| Province Location Code | Province location code (filtered by CAN) |
Canada-Specific Optional
| Name | Description |
|---|---|
| Province Is Primary | Is primary province - Y or N |
| Province Exempt From Tax | Exempt from tax |
| Province Pension Block Tax Amount | Pension block tax amount |
| Province Ins Plan Exempt From Tax | Insurance plan exempt from tax |
| Province Pension Months To Contribute | Pension months to contribute |
| Province Number Of Dependents | Number of dependents |
| Province Use Basic Personal Amount | Use basic personal amount |
| Province Total Claim Amount | Total claim amount |
| Province Prescribed Deduction Zone | Prescribed deduction zone |
| Province Income Less Claim Amount | Income less claim amount |
| Province Additional Amount Withheld | Additional amount withheld |
| Province Request Reduction Amount | Request reduction amount |
| Province Tax Credit Amount | Tax credit amount |
| Province Net Commission Amt | Net commission amount |
Here is a sample JSON input for USA:
{
"employeeNumber": "571957925",
"companyCode": "USG_2",
"country": "USA",
"workInLocationCode": "ATLANT",
"workInIsPrimaryLocation": "Y",
"workInIsActiveLocation": "Y",
"workInFilingStatusCode": "S",
"workInTotalAllowances": 2
}Here is a sample JSON input for Canada:
{
"employeeNumber": "571957925",
"companyCode": "USG_2",
"country": "CAN",
"provinceLocationCode": "ON",
"provinceIsPrimary": "Y",
"provinceTotalClaimAmount": 15000.00,
"provinceUseBasicPersonalAmount": "Y"
}Response
Upon successful update, the action returns:
- Staging ID for the import transaction
- Transaction creation timestamp
- Generated file name for tracking
- Transaction status
Updated about 19 hours ago
