ADP API Endpoints and Directory

ADP API

ADP is an industry leader offering a comprehensive human capital management suite (HCM solutions), bringing together payroll, attendance, HR, time, insights, and other services under one roof. Overall, ADP offers a suite of APIs that developers can get access to via the ADP marketplace. The ADP marketplace contains two types of applications that developers can leverage based on their use case, i.e., Data Connector and End User Application. ADP APIs are designed using an event-based pattern for resource management. ADP provides RESTful APIs.

ADP API follows OpenID Connect and Open Authorization (OAuth) 2.0 flows for comprehensive security. For each of them, ADP provides access tokens, which are used for secure calls to protect ADP Web APIs. Essentially, an access token is a time-bound token, or credential, which can be used to access protected ADP Web APIs restricted to an access scope. Access tokens are provided to the application during the integration process as part of the OpenID Connect and OAuth 2.0 authentication and authorization flow.

Related: ADP API Integration (In-Depth) Guide

ADP API Authentication

To access and interact with ADP's APIs and authenticate users via single sign-on (SSO), you'll need a Certificate Signing Request (CSR). Accessing ADP's web services requires both a private key and a corresponding Web Services (WS) Certificate. This certificate shares client information with ADP, while the private key verifies the client's authenticity.The WS Certificate can either be generated through an automated process (ideal for those building a marketplace application) or through a manual process (ideal for those building their own business application). To know more about each of these processes, click here.  

ADP API Events and Endpoints

ADP API (ADP Workforce Now) uses the following endpoints to facilitate the flow of information and data across channels.

HR Events

Worker Name Changes

  • POST /events/hr/v1/worker.birth-name.change : This API updates a worker's birth name.
  • GET /events/hr/v1/worker.birth-name.change/meta : This API endpoint retrieves metadata for the 'worker.birth-name.change' event.
  • POST /events/hr/v1/worker.legal-name.change : This API allows a worker to change their legal name in a given context.
  • GET /events/hr/v1/worker.legal-name.change/meta : This API endpoint retrieves metadata for the worker legal name change event.
  • POST /events/hr/v1/worker.preferred-name.change : This API allows a worker to change their preferred name in a given context.
  • GET /events/hr/v1/worker.preferred-name.change/meta : This API endpoint retrieves metadata for the event of changing a worker's preferred name.

Worker Status Changes

  • POST /events/hr/v1/worker.marital-status.change : This API allows for changing a worker's marital status.
  • GET /events/hr/v1/worker.marital-status.change/meta : This API endpoint retrieves metadata for the event of a worker's marital status change.
  • POST /events/hr/v1/worker.military-classification.change : The Change Worker Military Classification API allows for updating a worker's military classification details.
  • GET /events/hr/v1/worker.military-classification.change/meta : This API endpoint retrieves the metadata for the worker military classification change event.
  • POST /events/hr/v1/worker.military-status.change : This API endpoint is used to change the military status of a worker.
  • GET /events/hr/v1/worker.military-status.change/meta : This API endpoint retrieves metadata for the worker military status change event.

Worker Address Changes

  • POST /events/hr/v1/worker.legal-address.add : This API allows a worker to add a legal address.
  • POST /events/hr/v1/worker.legal-address.change : The Worker Legal Address Change API allows for updating the legal address of a worker.
  • POST /events/hr/v1/worker.legal-address.remove : The Worker Legal Address Remove API allows for the removal of a worker's legal address.
  • POST /events/hr/v1/worker.personal-address.add : The Add Worker Personal Address API allows a worker to add their personal address information.
  • POST /events/hr/v1/worker.personal-address.change : The Worker Personal Address Change API allows for updating the personal address of a worker.
  • POST /events/hr/v1/worker.personal-address.remove : This API allows a worker to remove a personal address from their records.

Worker Communication Changes

  • POST /events/hr/v1/worker.business-communication.email.add : This API allows a worker to add a business email address.
  • POST /events/hr/v1/worker.business-communication.email.change : This API allows a worker to change their business email address.
  • POST /events/hr/v1/worker.business-communication.email.remove : This API allows a worker to remove their business email address.
  • POST /events/hr/v1/worker.business-communication.fax.add : This API allows a worker to add a business fax number.
  • POST /events/hr/v1/worker.business-communication.fax.change : This API allows a worker to change their business fax number.
  • POST /events/hr/v1/worker.business-communication.fax.remove : This API allows a worker to remove their business fax number.
  • POST /events/hr/v1/worker.business-communication.landline.add : The Add Worker Business Landline API allows a worker to add a business landline number to their profile.
  • POST /events/hr/v1/worker.business-communication.landline.change : This API allows a worker to change their business landline number.
  • POST /events/hr/v1/worker.business-communication.landline.remove : This API allows a worker to remove a business landline.
  • POST /events/hr/v1/worker.business-communication.mobile.add : This API allows a worker to add a business mobile telephone number.
  • POST /events/hr/v1/worker.business-communication.mobile.change : This API allows a worker to change their business mobile telephone number.
  • POST /events/hr/v1/worker.business-communication.mobile.remove : This API allows a worker to remove their business mobile telephone number.
  • POST /events/hr/v1/worker.business-communication.pager.add : This API allows a worker to add a business pager number.
  • POST /events/hr/v1/worker.business-communication.pager.change : This API allows a worker to change their business pager number.
  • POST /events/hr/v1/worker.business-communication.pager.remove : This API allows a worker to remove their business pager number.
  • POST /events/hr/v1/worker.personal-communication.email.add : This API allows a worker to add a personal email address.
  • POST /events/hr/v1/worker.personal-communication.email.change : This API allows a worker to change their personal email address.
  • POST /events/hr/v1/worker.personal-communication.email.remove : This API allows a worker to remove their personal email address.
  • POST /events/hr/v1/worker.personal-communication.fax.add : This API allows a worker to add a personal fax number.
  • POST /events/hr/v1/worker.personal-communication.fax.change : This API allows a worker to change their personal fax number.
  • POST /events/hr/v1/worker.personal-communication.fax.remove : This API allows a worker to remove their personal fax number.
  • POST /events/hr/v1/worker.personal-communication.landline.add : This API allows a worker to add a personal landline number.
  • POST /events/hr/v1/worker.personal-communication.landline.change : This API allows a worker to change their personal landline number.
  • POST /events/hr/v1/worker.personal-communication.landline.remove : This API allows a worker to remove their personal landline number.
  • POST /events/hr/v1/worker.personal-communication.mobile.add : This API allows a worker to add their personal mobile telephone number.
  • POST /events/hr/v1/worker.personal-communication.mobile.change : This API allows a worker to change their personal mobile telephone number.
  • POST /events/hr/v1/worker.personal-communication.mobile.remove : This API allows a worker to remove their personal mobile telephone number.
  • POST /events/hr/v1/worker.personal-communication.pager.add : This API allows a worker to add a personal pager number.
  • POST /events/hr/v1/worker.personal-communication.pager.change : This API allows a worker to change their personal pager number.
  • POST /events/hr/v1/worker.personal-communication.pager.remove : This API allows a worker to remove their personal pager number.
  • GET /events/hr/v1/worker.personal-communication.pager.remove/meta : This API retrieves the metadata for the event of removing a worker's personal communication pager.

Worker Photo Management

  • POST /events/hr/v1/worker.photo.remove : The Remove Worker Photo API is used to remove the photo metadata and file of a worker.
  • GET /events/hr/v1/worker.photo.remove/meta : This API endpoint retrieves metadata for the worker photo removal event.
  • POST /events/hr/v1/worker.photo.upload : The Upload Worker Photo API allows clients to upload a worker's corporate contact photo.
  • GET /events/hr/v1/worker.photo.upload/meta : The Get Worker Photo Upload Event Metadata API returns metadata related to the worker photo upload event.

Payroll Events

US Tax Profile Changes

  • POST /events/payroll/v1/us-tax-profile.federal-income-tax-instruction.change : This API allows users to change a US tax profile federal income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.federal-income-tax-instruction.change/meta : This API endpoint retrieves metadata for changes in the US Federal Income Tax Instruction within a tax profile.
  • POST /events/payroll/v1/us-tax-profile.local-income-tax-instruction.add : This API allows the addition of a new US tax profile local income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.local-income-tax-instruction.add/meta : This API endpoint retrieves metadata for the US Tax Profile Local Income Tax Instruction.
  • POST /events/payroll/v1/us-tax-profile.local-income-tax-instruction.change : This API allows changing a US tax profile's local income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.local-income-tax-instruction.change/meta : This API endpoint retrieves metadata for the US Tax Profile Local Income Tax Instruction Change.
  • POST /events/payroll/v1/us-tax-profile.local-income-tax-instruction.remove : This API is used to remove an existing US tax profile local income tax instruction.
  • GET /events/payroll/v1/us-tax-profile.local-income-tax-instruction.remove/meta : This API endpoint returns metadata for the US Tax Profile Local Income Tax Instruction removal event.

Worker General Deduction Instructions

  • POST /events/payroll/v2/worker-general-deduction-instruction.change : The Change Worker General Deduction Instruction API allows users to modify the general deduction instructions for a worker in the payroll system.
  • GET /events/payroll/v2/worker-general-deduction-instruction.change/meta : This API endpoint retrieves metadata for the Worker General Deduction Instruction Change event.
  • POST /events/payroll/v2/worker-general-deduction-instruction.start : The Start Worker General Deduction Instruction API is used to initiate a general deduction instruction for a worker in the payroll system.
  • GET /events/payroll/v2/worker-general-deduction-instruction.start/meta : This API endpoint retrieves event metadata for the Worker General Deduction Instruction Start event.
  • POST /events/payroll/v2/worker-general-deduction-instruction.stop : The Stop Worker General Deduction Instruction API allows users to stop a general deduction instruction for a worker.
  • GET /events/payroll/v2/worker-general-deduction-instruction.stop/meta : This API endpoint retrieves metadata for the Worker General Deduction Instruction Stop event.

HCM Validation Tables

  • POST /hcm/v1/validation-tables/associate-work-locations : This API endpoint allows the addition of a new code to a validation table for associating work locations.
  • POST /hcm/v1/validation-tables/business-units : This API allows the addition of a new code to the Business Units validation table.
  • GET /hcm/v1/validation-tables/cost-centers : This API retrieves a list of cost centers from the validation table.
  • POST /hcm/v1/validation-tables/departments : This API allows the addition of a new department code and its details to a validation table.
  • POST /hcm/v1/validation-tables/jobs : This API allows the addition of new job title codes and their details to a validation table.
  • GET /hcm/v1/validation-tables/jobs/meta : This API retrieves meta information for jobs validation tables.
  • GET /hcm/v1/validation-tables/jobs/{item-id} : This API retrieves the details of a specific record in the validation table for jobs.
  • GET /hcm/v1/validation-tables/meta : This API endpoint retrieves meta information for validation tables.
  • GET /hcm/v1/validation-tables/person-custom-fields : This API retrieves a list of items in the Person Custom Fields validation table.
  • GET /hcm/v1/validation-tables/person-custom-fields/{item-id} : This API retrieves the details of a specific record in the Custom Fields - Person Custom Fields.
  • GET /hcm/v1/validation-tables/worker-custom-fields : The Get Worker Custom Fields API retrieves a list of items in the Worker Custom Fields validation table.
  • GET /hcm/v1/validation-tables/worker-custom-fields/{item-id} : This API retrieves the details of a specific record in the Custom Fields validation table.

HCM Onboarding

  • POST /hcm/v2/applicant.onboard : The Applicant Onboarding API is used to initiate the onboarding process for an applicant.
  • GET /hcm/v2/applicant.onboard/meta : The Get Applicant Onboarding Metadata API retrieves metadata information related to the applicant onboarding process.

Worker Profile

  • GET /hr/v2/workers/meta : The Get Worker Meta Information API retrieves meta information about workers.
  • GET /hr/v2/workers/{aoid} : The Get Worker Details API retrieves detailed information about a worker identified by the Associate OID (aoid).
  • GET /hr/v2/workers/{aoid}/worker-images/photo : This API retrieves a worker's profile picture using the GET method.
  • POST /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/additional-remunerations : This API operation allows the creation of additional remunerations for a worker, such as bonuses or commissions.
  • GET /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/additional-remunerations/meta : This API endpoint retrieves metadata for a worker's additional remuneration.
  • PUT /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/base-remuneration : This API operation updates a worker's base remuneration details such as salary, hourly rate, daily rate, or pay period rate.
  • GET /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/base-remuneration/meta : This API operation retrieves metadata about a worker's base remuneration update.
  • POST /hr/worker-profile/v1/workers/{aoid}/work-assignments/{assignment-id}/corporate-groups : This API endpoint allows the creation of a corporate group for a specific work assignment.

ADP API Use Cases

  • Easy to use, intuitive interface and highly customizable with efficient customer support
  • Access best-practice guides, HR forms, policies, and an employee handbook template
  • Automation of processes like onboarding, status change, offboarding
  • Providing employees access to to their pay, benefits and time information, offering true self service
  • Real time mobile phone access to important information like time off, benefits data, etc. with a mobile application
  • Tracking and monitoring of key metrics like labor costs, overtime, actual vs. scheduled hours, turnover rate for better HR services

Top Customers

  • Jelly Belly, gourmet jelly belly candies and confections manufacturer
  • Amazon, a vast Internet-based enterprise
  • The Boston Globe, an American daily newspaper
  • Dell Technologies, a provider of desktop personal computers, software, and peripherals
  • Sunstone Partners, a growth-oriented private equity firm

ADP API FAQs

Here is a comprehensive list of questions that can help you navigate ADP API for success:

  1. How to obtain ADP API Client Secret for OAuth? Answer
  2. How to get ADP API past SSL error? Answer
  3. How to update ADP API Worker Information? Answer
  4. How to get Powershell ADP API Token? Answer
  5. How to Solve ADP API Connection Problem(Error : Status-58)? Answer
  6. How to change a person's custom string using ADP's API? Answer
  7. How to get access_token from ADP Api using rest? Answer
  8. What is the latest API updated or released for ADP Workforce Now? Answer
  9. What is the release plan for ADP Workforce Now APIs? Answer
  10. What are latest API updated or released for RUN Powered by ADP? Answer
  11. What APIs will be released or enhanced for RUN Powered by ADP soon? Answer
  12. How to integrate ADP employee data in Wordpress? Answer
  13. How to read properties from an ADP project by C#? Answer

Common Integrations with ADP API

While there can be multiple integrations and use cases for ADP API, here is a list of the top SaaS companies or products that can integrate with ADP API to facilitate customer success:

  • Learning Management Solutions
  • Rewards, Recognitions, and Performance
  • Communication and Collaborations
  • Employee Travel and Booking Tools
  • Workforce Planning and Org Chart Solutions

How to integrate with ADP API

Here is a comprehensive resource for anyone who wishes to integrate with ADP API and streamline and optimize their HR and allied operations. 

Get started with ADP API 

The pricing for ADP API is not publicly available. However, the platform does offer a demo for interested customers. At the same time, ADP provides tailor-made pricing based on specific company requirements. Thus companies can share the required information to get access to competitive pricing, across different tiers based on the features they need. You can request pricing here.

To make the integration process smooth with ADP, you can get started with Knit, one API for all your integrations. Sign up with Knit or book a demo here with one of our experts - Book Demo

#1 in Ease of Integrations

Trusted by businesses to streamline and simplify integrations seamlessly with GetKnit.