---
title: "Paychex API Directory"
description: "Learn all about Paychex API endpoints in this API directory"
source_url: "https://www.getknit.dev/blog/paychex-api-directory"
page_type: "blog"
---

_This is an educational blog post from Knit's blog: “Paychex API Directory”._

# Paychex API Directory

Paychex is a payroll and HR solutions provider designed to simplify workforce management for businesses of all sizes. It offers a range of tools for payroll processing, employee benefits, time tracking, and compliance, helping companies streamline their HR tasks. 

With Paychex’s API, developers can integrate payroll, benefits, and other HR data with external applications, enabling automation and creating a seamless experience for managing employee-related tasks across platforms.

Here are some key highlights of the **Paychex APIs**:

1.  **Payroll Processing**: Automate payroll calculations, deductions, and tax filings for smooth and timely payments.
2.  **Employee Management**: Access and manage employee data, including personal details, employment status, and role-based permissions.
3.  **Time and Attendance**: Track employee hours, manage time-off requests, and streamline attendance records for accurate payroll processing.
4.  **Benefits Administration**: Integrate employee benefits data to easily manage enrollments, coverage updates, and compliance reporting.
5.  **Compliance and Tax Data**: Access tax compliance data and generate reports to simplify filing and stay aligned with local, state, and federal regulations.
6.  **Secure Authentication**: Uses OAuth 2.0 for secure data exchange, ensuring that sensitive payroll and employee information is protected.

In this article, we will explore what are the most commonly used Paychex API endpoints and how they allow businesses to streamline their HR and payroll operations, making it easy to integrate Paychex services into existing workflows.

## **Paychex API Endpoints**

Here are the most commonly used Paychex API endpoints - 

#### **Authentication**

*   POST [https://api.paychex.com/auth/oauth/v2/token](https://api.paychex.com/auth/oauth/v2/token)

#### Company

*   GET [https://api.paychex.com/companies](https://api.paychex.com/companies)
*   GET [https://api.paychex.com/companies/{companyId](https://api.paychex.com/companies/%7BcompanyId)}
*   GET [https://api.paychex.com/companies/{companyId}/calculationbases](https://api.paychex.com/companies/%7BcompanyId%7D/calculationbases)
*   GET [https://api.paychex.com/companies/{companyId}/contacttypes](https://api.paychex.com/companies/%7BcompanyId%7D/contacttypes)
*   GET [https://api.paychex.com/companies/{companyId}/customfields](https://api.paychex.com/companies/%7BcompanyId%7D/customfields)
*   POST [https://api.paychex.com/companies/{companyId}/customfields](https://api.paychex.com/companies/%7BcompanyId%7D/customfields)
*   GET [https://api.paychex.com/companies/{companyId}/customfields/{customFieldId](https://api.paychex.com/companies/%7BcompanyId%7D/customfields/%7BcustomFieldId)}
*   DELETE [https://api.paychex.com/companies/{companyId}/customfields/{customfieldid](https://api.paychex.com/companies/%7BcompanyId%7D/customfields/%7Bcustomfieldid)}
*   PATCH [https://api.paychex.com/companies/{companyId}/customfields/{customfieldid](https://api.paychex.com/companies/%7BcompanyId%7D/customfields/%7Bcustomfieldid)}
*   GET [https://api.paychex.com/companies/{companyId}/customfieldscategories](https://api.paychex.com/companies/%7BcompanyId%7D/customfieldscategories)
*   POST [https://api.paychex.com/companies/{companyId}/customfieldscategories](https://api.paychex.com/companies/%7BcompanyId%7D/customfieldscategories)
*   GET [https://api.paychex.com/companies/{companyId}/customfieldscategories/{categoryId](https://api.paychex.com/companies/%7BcompanyId%7D/customfieldscategories/%7BcategoryId)}
*   DELETE [https://api.paychex.com/companies/{companyId}/customfieldscategories/{categoryid](https://api.paychex.com/companies/%7BcompanyId%7D/customfieldscategories/%7Bcategoryid)}
*   PATCH [https://api.paychex.com/companies/{companyId}/customfieldscategories/{categoryid](https://api.paychex.com/companies/%7BcompanyId%7D/customfieldscategories/%7Bcategoryid)}
*   GET [https://api.paychex.com/companies/{companyId}/jobs](https://api.paychex.com/companies/%7BcompanyId%7D/jobs)
*   POST [https://api.paychex.com/companies/{companyId}/jobs](https://api.paychex.com/companies/%7BcompanyId%7D/jobs)
*   GET [https://api.paychex.com/companies/{companyId}/jobs/{jobId](https://api.paychex.com/companies/%7BcompanyId%7D/jobs/%7BjobId)}
*   PATCH [https://api.paychex.com/companies/{companyId}/jobs/{jobId](https://api.paychex.com/companies/%7BcompanyId%7D/jobs/%7BjobId)}
*   GET [https://api.paychex.com/companies/{companyId}/jobsegments](https://api.paychex.com/companies/%7BcompanyId%7D/jobsegments)
*   GET [https://api.paychex.com/companies/{companyId}/jobtitles](https://api.paychex.com/companies/%7BcompanyId%7D/jobtitles)
*   GET [https://api.paychex.com/companies/{companyId}/jobtitles/{jobTitleId](https://api.paychex.com/companies/%7BcompanyId%7D/jobtitles/%7BjobTitleId)}
*   GET [https://api.paychex.com/companies/{companyId}/laborassignments](https://api.paychex.com/companies/%7BcompanyId%7D/laborassignments)
*   GET [https://api.paychex.com/companies/{companyId}/laborassignments/{laborAssignmentId](https://api.paychex.com/companies/%7BcompanyId%7D/laborassignments/%7BlaborAssignmentId)}
*   GET [https://api.paychex.com/companies/{companyId}/locations](https://api.paychex.com/companies/%7BcompanyId%7D/locations)
*   GET [https://api.paychex.com/companies/{companyId}/locations/{locationId](https://api.paychex.com/companies/%7BcompanyId%7D/locations/%7BlocationId)}
*   GET [https://api.paychex.com/companies/{companyId}/organizations](https://api.paychex.com/companies/%7BcompanyId%7D/organizations)
*   GET [https://api.paychex.com/companies/{companyId}/organizations/{orgId](https://api.paychex.com/companies/%7BcompanyId%7D/organizations/%7BorgId)}
*   GET [https://api.paychex.com/companies/{companyId}/payfrequencies](https://api.paychex.com/companies/%7BcompanyId%7D/payfrequencies)
*   GET [https://api.paychex.com/companies/{companyId}/workers](https://api.paychex.com/companies/%7BcompanyId%7D/workers)
*   POST [https://api.paychex.com/companies/{companyId}/workers](https://api.paychex.com/companies/%7BcompanyId%7D/workers)
*   GET [https://api.paychex.com/companies/{companyId}/workerstatuses](https://api.paychex.com/companies/%7BcompanyId%7D/workerstatuses)
*   GET [https://api.paychex.com/companies/{companyId}/workerstatuses/{statusId](https://api.paychex.com/companies/%7BcompanyId%7D/workerstatuses/%7BstatusId)}

#### Payroll

*   GET [https://api.paychex.com/companies/{companyId}/checks](https://api.paychex.com/companies/%7BcompanyId%7D/checks)
*   POST [https://api.paychex.com/companies/{companyId}/checks](https://api.paychex.com/companies/%7BcompanyId%7D/checks)
*   GET [https://api.paychex.com/companies/{companyId}/paycomponents](https://api.paychex.com/companies/%7BcompanyId%7D/paycomponents)
*   GET [https://api.paychex.com/companies/{companyId}/paycomponents/{paycomponentId](https://api.paychex.com/companies/%7BcompanyId%7D/paycomponents/%7BpaycomponentId)}
*   GET [https://api.paychex.com/companies/{companyId}/payperiods](https://api.paychex.com/companies/%7BcompanyId%7D/payperiods)
*   GET [https://api.paychex.com/companies/{companyId}/payperiods/{payperiodId](https://api.paychex.com/companies/%7BcompanyId%7D/payperiods/%7BpayperiodId)}
*   GET [https://api.paychex.com/workers/{workerId}/checks](https://api.paychex.com/workers/%7BworkerId%7D/checks)
*   POST [https://api.paychex.com/workers/{workerId}/checks](https://api.paychex.com/workers/%7BworkerId%7D/checks)
*   GET [https://api.paychex.com/workers/{workerId}/checks/{externalCheckId](https://api.paychex.com/workers/%7BworkerId%7D/checks/%7BexternalCheckId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/checks/{externalCheckId](https://api.paychex.com/workers/%7BworkerId%7D/checks/%7BexternalCheckId)}
*   DELETE [https://api.paychex.com/checks](https://api.paychex.com/checks)
*   POST [https://api.paychex.com/checks/{checkId}/checkcomponents](https://api.paychex.com/checks/%7BcheckId%7D/checkcomponents)
*   DELETE [https://api.paychex.com/checks/{checkId}/checkcomponents/{checkComponentId](https://api.paychex.com/checks/%7BcheckId%7D/checkcomponents/%7BcheckComponentId)}
*   PATCH [https://api.paychex.com/checks/{checkId}/checkcomponents/{checkComponentId](https://api.paychex.com/checks/%7BcheckId%7D/checkcomponents/%7BcheckComponentId)}

#### Worker

*   GET [https://api.paychex.com/workers/{workerId](https://api.paychex.com/workers/%7BworkerId)}
*   DELETE [https://api.paychex.com/workers/{workerId](https://api.paychex.com/workers/%7BworkerId)}
*   PATCH [https://api.paychex.com/workers/{workerId](https://api.paychex.com/workers/%7BworkerId)}
*   GET [https://api.paychex.com/workers/{workerId}/assignmentdistributions](https://api.paychex.com/workers/%7BworkerId%7D/assignmentdistributions)
*   GET [https://api.paychex.com/workers/{workerId}/communications](https://api.paychex.com/workers/%7BworkerId%7D/communications)
*   POST [https://api.paychex.com/workers/{workerId}/communications](https://api.paychex.com/workers/%7BworkerId%7D/communications)
*   GET [https://api.paychex.com/workers/{workerId}/communications/{communicationId](https://api.paychex.com/workers/%7BworkerId%7D/communications/%7BcommunicationId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/communications/{communicationId](https://api.paychex.com/workers/%7BworkerId%7D/communications/%7BcommunicationId)}
*   PATCH [https://api.paychex.com/workers/{workerId}/communications/{communicationId](https://api.paychex.com/workers/%7BworkerId%7D/communications/%7BcommunicationId)}
*   GET [https://api.paychex.com/workers/{workerId}/compensation](https://api.paychex.com/workers/%7BworkerId%7D/compensation)
*   GET [https://api.paychex.com/workers/{workerId}/compensation/payrates](https://api.paychex.com/workers/%7BworkerId%7D/compensation/payrates)
*   POST [https://api.paychex.com/workers/{workerId}/compensation/payrates](https://api.paychex.com/workers/%7BworkerId%7D/compensation/payrates)
*   GET [https://api.paychex.com/workers/{workerId}/compensation/payrates/{rateId](https://api.paychex.com/workers/%7BworkerId%7D/compensation/payrates/%7BrateId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/compensation/payrates/{rateId](https://api.paychex.com/workers/%7BworkerId%7D/compensation/payrates/%7BrateId)}
*   PATCH [https://api.paychex.com/workers/{workerId}/compensation/payrates/{rateId](https://api.paychex.com/workers/%7BworkerId%7D/compensation/payrates/%7BrateId)}
*   GET [https://api.paychex.com/workers/{workerId}/compensation/paystandards](https://api.paychex.com/workers/%7BworkerId%7D/compensation/paystandards)
*   GET [https://api.paychex.com/workers/{workerId}/contacts](https://api.paychex.com/workers/%7BworkerId%7D/contacts)
*   POST [https://api.paychex.com/workers/{workerId}/contacts](https://api.paychex.com/workers/%7BworkerId%7D/contacts)
*   GET [https://api.paychex.com/workers/{workerId}/contacts/{contactId](https://api.paychex.com/workers/%7BworkerId%7D/contacts/%7BcontactId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/contacts/{contactId](https://api.paychex.com/workers/%7BworkerId%7D/contacts/%7BcontactId)}
*   PATCH [https://api.paychex.com/workers/{workerId}/contacts/{contactId](https://api.paychex.com/workers/%7BworkerId%7D/contacts/%7BcontactId)}
*   GET [https://api.paychex.com/workers/{workerId}/customfields](https://api.paychex.com/workers/%7BworkerId%7D/customfields)
*   POST [https://api.paychex.com/workers/{workerId}/customfields](https://api.paychex.com/workers/%7BworkerId%7D/customfields)
*   GET [https://api.paychex.com/workers/{workerId}/customfields/{workerCustomFieldId](https://api.paychex.com/workers/%7BworkerId%7D/customfields/%7BworkerCustomFieldId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/customfields/{workerCustomFieldId](https://api.paychex.com/workers/%7BworkerId%7D/customfields/%7BworkerCustomFieldId)}
*   PATCH [https://api.paychex.com/workers/{workerId}/customfields/{workerCustomFieldId](https://api.paychex.com/workers/%7BworkerId%7D/customfields/%7BworkerCustomFieldId)}
*   GET [https://api.paychex.com/workers/{workerId}/directdeposits](https://api.paychex.com/workers/%7BworkerId%7D/directdeposits)
*   POST [https://api.paychex.com/workers/{workerId}/directdeposits](https://api.paychex.com/workers/%7BworkerId%7D/directdeposits)
*   PATCH [https://api.paychex.com/workers/{workerId}/directdeposits](https://api.paychex.com/workers/%7BworkerId%7D/directdeposits)
*   GET [https://api.paychex.com/workers/{workerId}/directdeposits/{directDepositId](https://api.paychex.com/workers/%7BworkerId%7D/directdeposits/%7BdirectDepositId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/directdeposits/{directDepositId](https://api.paychex.com/workers/%7BworkerId%7D/directdeposits/%7BdirectDepositId)}
*   PATCH [https://api.paychex.com/workers/{workerId}/directdeposits/{directDepositId](https://api.paychex.com/workers/%7BworkerId%7D/directdeposits/%7BdirectDepositId)}
*   GET [https://api.paychex.com/workers/{workerId}/federaltax](https://api.paychex.com/workers/%7BworkerId%7D/federaltax)
*   POST [https://api.paychex.com/workers/{workerId}/federaltax](https://api.paychex.com/workers/%7BworkerId%7D/federaltax)
*   DELETE [https://api.paychex.com/workers/{workerId}/federaltax](https://api.paychex.com/workers/%7BworkerId%7D/federaltax)
*   PATCH [https://api.paychex.com/workers/{workerId}/federaltax](https://api.paychex.com/workers/%7BworkerId%7D/federaltax)
*   GET [https://api.paychex.com/workers/{workerId}/federaltax](https://api.paychex.com/workers/%7BworkerId%7D/federaltax)
*   POST [https://api.paychex.com/workers/{workerId}/paycomponents](https://api.paychex.com/workers/%7BworkerId%7D/paycomponents)
*   PATCH [https://api.paychex.com/workers/{workerId}/paycomponents](https://api.paychex.com/workers/%7BworkerId%7D/paycomponents)
*   GET [https://api.paychex.com/workers/{workerId}/paycomponents/{workerComponentId](https://api.paychex.com/workers/%7BworkerId%7D/paycomponents/%7BworkerComponentId)}
*   DELETE [https://api.paychex.com/workers/{workerId}/paycomponents/{workerComponentId](https://api.paychex.com/workers/%7BworkerId%7D/paycomponents/%7BworkerComponentId)}
*   PATCH [https://api.paychex.com/workers/{workerId}/paycomponents/{workerComponentId](https://api.paychex.com/workers/%7BworkerId%7D/paycomponents/%7BworkerComponentId)}
*   GET [https://api.paychex.com/workers/{workerId}/status](https://api.paychex.com/workers/%7BworkerId%7D/status)
*   GET [https://api.paychex.com/workers/{workerId}/timeoff](https://api.paychex.com/workers/%7BworkerId%7D/timeoff)

#### Management

*   POST [https://api.paychex.com/management/requestclientaccess](https://api.paychex.com/management/requestclientaccess)

#### Webhooks

*   GET [https://api.paychex.com/management/domains](https://api.paychex.com/management/domains)
*   GET [https://api.paychex.com/management/hooks](https://api.paychex.com/management/hooks)
*   POST [https://api.paychex.com/management/hooks](https://api.paychex.com/management/hooks)
*   GET [https://api.paychex.com/management/hooks/{hookId](https://api.paychex.com/management/hooks/%7BhookId)}
*   DELETE [https://api.paychex.com/management/hooks/{hookId](https://api.paychex.com/management/hooks/%7BhookId)}

[Here’s a detailed reference](https://developer.paychex.com/documentation#section/Developer-Resources) to all the Paychex API Endpoints.

## **Paychex API FAQs**

Here are the frequently asked questions about Paychex APIs to help you get started:

1.  Do Paychex APIs support pagination? [Answer](https://developer.paychex.com/resources/paging)
2.  What is the rate limit on Paychex API endpoints? [Answer](https://developer.paychex.com/resources/rate-limiting)
3.  What happens when I POST new workers via the Paychex API, and what are the required fields? [Answer](https://developer.paychex.com/resources/worker)
4.  How do I specify a vendor media type profile in Paychex API requests, and is it required for each call? [Answer](https://developer.paychex.com/resources/vendor-media-type)
5.  What are the predefined headers used in Paychex API requests and responses? [Answer](https://developer.paychex.com/resources/headers)

Find more FAQs [here](https://developer.paychex.com/resources/frequently-asked-questions).

## **Get started with Paychex API**

To access Paychex APIs, create a Paychex account and log in to the Developer Portal. Apply for API access, and upon approval, you'll receive your API credentials (client ID and secret). Use these for OAuth 2.0 authentication to securely access the API endpoints. Review the documentation for integration guidelines.

If you’re looking for a quick way to connect multiple Payroll systems, consider using Knit—a single API solution that integrates with major platforms, streamlining your setup and reducing development time. To sign up for free, [click here](https://app.getknit.dev/signup). To check the pricing, see our [pricing page](https://www.getknit.dev/pricing).


## Related pages

- [How Knit works](https://md.getknit.dev/how-knit-works)
- [Unified API product](https://md.getknit.dev/products/unified-api)
