Connecting to UKGProHCM
Using Basic Authentication
UKG Pro HCM uses Basic authentication combined with a customer API key to authorize access to the API. To connect, you will need your UKG Pro HCM credentials and a customer API key issued by UKG.
Set the following connection properties to authenticate:
- AuthScheme: Set this to Basic.
- User: Set this to your UKG Pro HCM username.
- Password: Set this to your UKG Pro HCM password.
- ProfileSettings: Set this to a semicolon-separated list containing:
- Host: Your UKG Pro HCM tenant hostname (e.g., yourcompany.ultipro.com).
- CustomerAPIKey: Your UKG customer API key. This is passed as the US-CUSTOMER-API-KEY request header on each API call.
To obtain your customer API key, contact your UKG Pro HCM administrator or refer to the UKG Developer Portal at https://developer.ukg.com.
Example Connection String
Profile=C:\profiles\UKGProHCM.apip;AuthScheme=Basic;User=your_username;Password=your_password;ProfileSettings='Host=yourcompany.ultipro.com;CustomerAPIKey=your_customer_api_key';
Available Tables
The UKG Pro HCM API Profile provides access to the following tables:
- CareerProvider: Retrieves career provider code table entries used to classify employee career and education providers.
- CompanyCompensationDetails: Retrieves compensation details for employees at the company level.
- CompanyDetails: Retrieves company configuration and identification information.
- CompanyEmploymentDetails: Retrieves employment details for employees at the company level.
- CompanyPersonDetails: Retrieves personal details for employees at the company level.
- CompanyProperty: Retrieves company property code table entries used to classify company-level properties.
- CompensationDetails: Retrieves employee compensation details including salary, pay rates, and pay groups.
- Contacts: Retrieves employee emergency contact information.
- ContractDetails: Retrieves contract details for employees including contract type and hours.
- DemographicDetails: Retrieves demographic information for employees including ethnicity and disability status.
- EmployeeChanges: Retrieves employee change history including field-level change tracking.
- EmployeePTOPlans: Retrieves PTO plan balances for a specific employee (requires EmployeeId and CompanyId).
- EmploymentDetails: Retrieves employment details including job title, hire dates, org levels, and employment status.
- JobGroups: Retrieves job group definitions used to classify and organize jobs.
- JobHistoryDetails: Retrieves employee job history including past positions, pay rates, and org assignments.
- Jobs: Retrieves job code definitions including title, FLSA classification, and EEO category.
- OrgLevels: Retrieves organizational level definitions for divisions, departments, regions, and team leads.
- PayStatementDetail: Retrieves pay statement line-item details for employee paychecks.
- PersonDetails: Retrieves personal details for employees including name, address, demographic, and compliance information.
- Positions: Retrieves position definitions including job code, org level assignments, and FTE targets.
- PTOPlans: Retrieves PTO plan balances for employees including earned, taken, and pending hours.
- SupervisorDetails: Retrieves supervisor assignment details for employees including supervisor contact information.
- UserDetails: Retrieves user account details including login status and last login time.
Usage Examples
PersonDetails:
SELECT * FROM PersonDetails
SELECT * FROM PersonDetails WHERE EmployeeId = '1HHI8N000080'
EmploymentDetails:
SELECT * FROM EmploymentDetails WHERE CompanyId = 'Default'
CompensationDetails:
SELECT * FROM CompensationDetails WHERE CompanyId = 'Default'
JobHistoryDetails:
SELECT * FROM JobHistoryDetails WHERE EmployeeId = '1HHI8N000080'
PTOPlans:
SELECT * FROM PTOPlans WHERE EmployeeId = '1HHI8N000080'
EmployeePTOPlans:
SELECT * FROM EmployeePTOPlans WHERE EmployeeId = '1HHI8N000080' AND CompanyId = 'Default'
SupervisorDetails:
SELECT * FROM SupervisorDetails WHERE CompanyId = 'Default'
UserDetails:
SELECT * FROM UserDetails WHERE UserStatus = 'A'
OrgLevels:
SELECT * FROM OrgLevels
Jobs:
SELECT * FROM Jobs WHERE JobCode = 'MGR'
JobGroups:
SELECT * FROM JobGroups
Positions:
SELECT * FROM Positions WHERE CompanyId = 'Default'
Contacts:
SELECT * FROM Contacts WHERE EmployeeId = '1HHI8N000080'
ContractDetails:
SELECT * FROM ContractDetails WHERE CompanyId = 'Default'
DemographicDetails:
SELECT * FROM DemographicDetails WHERE CompanyId = 'Default'
EmployeeChanges:
SELECT * FROM EmployeeChanges WHERE EmployeeId = '1HHI8N000080' AND CompanyId = 'Default'
PayStatementDetail:
SELECT * FROM PayStatementDetail WHERE EmployeeId = '1HHI8N000080' AND CompanyId = 'Default'
CompanyDetails:
SELECT * FROM CompanyDetails
CompanyCompensationDetails:
SELECT * FROM CompanyCompensationDetails WHERE CompanyId = 'Default'
CompanyEmploymentDetails:
SELECT * FROM CompanyEmploymentDetails WHERE CompanyId = 'Default'
CompanyPersonDetails:
SELECT * FROM CompanyPersonDetails WHERE CompanyId = 'Default'
CareerProvider:
SELECT * FROM CareerProvider
CompanyProperty:
SELECT * FROM CompanyProperty
Connection Properties
The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider.
| Property | Description |
| AuthScheme | The scheme used for authentication. Accepted entries are Basic or None. Allowed values are: BASIC, NONE, NTLM, OAUTH, APIKEY, OAUTH_CLIENT, OAUTH_PASSWORD |
| CustomerAPIKey | The customer API key used to authenticate requests to UKG Pro HCM. |
| Host | The hostname of the UKG Pro HCM datacenter assigned to your organization. |
| Password | The password of the currently authenticated user. |
| User | The username of the currently authenticated user. |