UKG Pro is a human capital management (HCM) solution that simplifies payroll, HR, talent management, and employee engagement. With an easy-to-use interface, it helps businesses manage their workforce efficiently and boost productivity.
UKG Pro APIs allow developers to integrate its HR, payroll, and management features into custom applications. These APIs provide access to employee data, payroll, and more, enabling businesses to build tailored solutions, improve workflows, and create a connected HR system.
Key highlights of UKG Pro APIs are as follows -
- Comprehensive Data Access: They provide direct access to employee data, payroll, time management, and HR information.
- Custom Integrations: They enable the integration of UKG Pro features into custom applications for tailored solutions.
- Automation and Efficiency: They help to streamline workflows by automating HR processes like payroll and employee management.
- Real-Time Data: They provide real-time access to information, ensuring up-to-date data for decision-making.
- Secure and Scalable: They are built with strong security controls and can scale to support growing business needs.
- Developer-Friendly: They offer clear documentation and flexible endpoints to simplify development.
This article will provide an overview of the UKG Pro API endpoints. These endpoints enable businesses to build custom solutions, automate workflows, and streamline HR operations.
UKG Pro API Endpoints
Here are the most commonly used API endpoints in the latest version -
Company Details
- GET /configuration/v1/company-details
Compensation Details
- GET /personnel/v1/compensation-details
- GET /personnel/v1/companies/{companyId}/compensation-details
- GET /personnel/v1/companies/{companyId}/employees/{employeeId}/compensation-details
- GET /personnel/v1/compensation-details/{employeeId}
Employee Deductions
- GET /personnel/v1/emp-deductions
Employee Change
- GET /personnel/v1/employee-changes
- GET /personnel/v1/employee-changes/{employeeId}
Employee Contact Details
- GET /personnel/v1/contacts
- GET /personnel/v1/contacts/{contactId}
Employee Contract Details
- GET /personnel/v1/employee-contract-details
Employee Demographic Details
- GET /personnel/v1/employee-demographic-details
Employee Education Details
- GET /personnel/v1/employee-education
Employee Employment Details
- GET /personnel/v1/employee-employment-details
Employee Job History Details
- GET /personnel/v1/employee-job-history-details
- GET /personnel/v1/employee-job-history-details/{systemId}
Employee ID Lookup
- POST /personnel/v1/employee-ids
Employee Pay Statement
- POST /payroll/v1/companies/pay-statements-summary
- POST /payroll/v1/companies/pay-statements
- POST /payroll/v1/employees/pay-statements
- POST /payroll/v1/employees/pay-statement/last
- POST /payroll/v1/employees/pay-statement/{PayIdentifier}
Employment Details
- GET /personnel/v1/employment-details
- GET /personnel/v1/companies/{companyId}/employment-details
- GET /personnel/v1/companies/{companyId}/employees/{employeeId}/employment-details
Jobs Configuration
- /configuration/v1/jobgroup
- /configuration/v1/jobs
- /configuration/v1/jobs/{code}
Person Details
- GET /personnel/v1/person-details
- GET /personnel/v1/companies/{companyId}/person-details
- GET /personnel/v1/companies/{companyId}/employees/{employeeId}/person-details
- GET /personnel/v1/person-details/{employeeId}
PTO Plans
- GET /personnel/v1/pto-plans
- POST /personnel/v1/pto-plans
- PATCH /personnel/v1/companies/{companyId}/employees/{employeeId}/pto-plans/{ptoPlan}
- GET /personnel/v1/companies/{companyId}/employees/{employeeId}/pto-plans/{ptoPlan}
- GET /personnel/v1/companies/{companyId}/employees/{employeeId}/pto-plans
Recruiting
- GET /talent/recruiting/v2/{tenantalias}/api/applications
- POST /talent/recruiting/v2/{tenantalias}/api/applications
- GET /talent/recruiting/v2/{tenantalias}/api/applications/{applicationId}
- POST /talent/recruiting/v2/{tenantalias}/api/applications/{applicationId}/documents
- GET /talent/recruiting/v2/{tenantalias}/api/applications/{applicationId}/comments
- POST /talent/recruiting/v2/{tenantalias}/api/applications/{applicationId}/comments
- POST /talent/recruiting/v2/{tenantalias}/api/applications/{applicationId}/hire
- GET /talent/recruiting/v2/{tenantalias}/api/background-check-order-requests
- POST /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/background-checks
- GET /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/background-checks
- GET /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/background-checks/{backgroundCheckId}
- PUT /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/background-checks/{backgroundCheckId}
- GET /talent/recruiting/v2/{tenantalias}/api/background-check-results-requests
- GET /talent/recruiting/v2/{tenantalias}/api/candidates
- POST /talent/recruiting/v2/{tenantalias}/api/candidates
- GET /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}
- GET /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/user-name-email
- POST /talent/recruiting/v2/{tenantalias}/api/candidates-lookup
- POST /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/documents
- GET /talent/recruiting/v2/{tenantalias}/api/candidates/{candidateId}/skills
- GET /talent/recruiting/v2/{tenantalias}/api/offers
- POST /talent/recruiting/v2/{tenantalias}/api/offers
- GET /talent/recruiting/v2/{tenantalias}/api/offers/{offerId}/offer-actions
- POST /talent/recruiting/v2/{tenantalias}/api/offers/{offerId}/submit-for-approval
User Details
- GET /personnel/v1/user-details
Here’s a detailed reference to all the UKG Pro API Endpoints.
UKG Pro API Authentication
UKG Pro's core REST APIs, covering company, personnel, and payroll data, use Basic Authentication tied to a dedicated web service account. The onboarding and recruiting REST APIs use an Authorization Token instead. Both credential types have to be requested from UKG directly; there is no self-serve API key generation for UKG Pro.
UKG also rate-limits API calls, evaluated over a rolling time window such as one minute, and returns a 429 status once a client goes over the limit. UKG's own guidance is to add a short delay, around one second, before retrying a throttled call rather than retrying immediately.
UKG Pro API FAQs
Here are the frequently asked questions about the UKG Pro API to help you get started:
What is the UKG Pro API used for?
The UKG Pro API lets developers read and update HR, payroll, time-off, and recruiting data programmatically, covering resources like employee records, compensation, pay statements, and PTO plans. Knit connects to these same UKG Pro endpoints as part of a single unified API spanning 160+ HRIS, ATS, and other business systems, so you can pull UKG Pro employee and payroll data alongside data from other HR platforms without building a separate integration for each one.
How do I get access to the UKG Pro API?
Knit removes the manual request step UKG Pro normally requires: once your credentials are connected in Knit, you query employee, payroll, and time-off data through one API instead of separately negotiating access for every HR system you connect. Direct UKG Pro API access isn't self-serve, you need to request it, along with a dedicated web service account, through your UKG account manager or support team before you can call any endpoint.
What authentication method does the UKG Pro API use?
UKG Pro's core REST APIs authenticate with Basic Authentication and a web service account, while the onboarding and recruiting REST APIs use an Authorization Token, per UKG's own developer documentation. Knit handles this split for you, storing and refreshing the right credential type for each UKG Pro API family so your integration code only has to talk to one consistent Knit endpoint.
How can I retrieve an employee's pay statement from UKG Pro through the API?
You call the POST /payroll/v1/employees/pay-statement/{PayIdentifier} endpoint with the employee's pay identifier to pull a specific pay statement, or the pay-statements-summary endpoint to list statements for a company. Knit exposes this same pay statement data through one normalized payroll endpoint, so if you're also pulling pay statements from ADP, Gusto, or another payroll system, you get a consistent response shape from Knit instead of mapping each vendor's payload separately.
Does the UKG Pro API have rate limits?
Yes. Yes, and Knit's integration layer handles this throttling and retry logic automatically for UKG Pro calls made through it, so a 429 doesn't turn into a failed sync on your end. UKG rate-limits API calls over a rolling time window, such as one minute, and returns a 429 response when a client exceeds it, recommending roughly a one-second delay before retrying.
What's the easiest way to connect UKG Pro with other HR or payroll systems?
Building it yourself means maintaining a dedicated UKG Pro integration, including its Basic Authentication and web service account setup, plus a separate integration for every other HRIS or payroll tool you support. Knit is built to remove that overhead: it's one API that connects to UKG Pro along with 160+ other HR, payroll, and recruiting systems, so you build the integration once and add new systems without writing new API-specific code each time.
Get started with UKG Pro API
UKG Pro API access is only available by contacting their support or account management team. If you're building the integration yourself in Python, our step-by-step guide to pulling employee data from the UKG Pro API walks through authentication and pagination in detail. If you'd rather integrate with multiple HRMS or recruitment APIs quickly instead of building each one from scratch, you can get started with Knit, one API for all top integrations.
To sign up for free, click here. To check the pricing, see our pricing page.
.png)

.png)
.webp)
