Authors: Ashish Singh Chauhan & Shubham Singh Panwar
What is ADP?
ADP HR system is a human resource management software platform developed by ADP, a global provider of human capital management solutions. The ADP HR system is designed to help businesses manage their human resource functions more efficiently and effectively. The system provides a comprehensive suite of tools and features for managing employee data, payroll, benefits administration, time and attendance, recruitment, performance management, and more.
Overall, the ADP HR system is a powerful tool that helps organizations manage their workforce more effectively and efficiently, allowing them to focus on their core business activities.
Prerequisites for Integration in Mule
- An Active ADP account. As of now, ADP did not provide any free account so there must be an active account. – ttps://www.adp.com/resources/demos.aspx
- A client Id and client Secret for your ADP. In this blog, we are going to cover workers API.
- An ADP p12 certificate is used to connect to your ADP system and access token generation.
Along with this p12 certificate, you also need the password which is used to download this certificate.
NOTE: This p12 certificate is used to uniquely identify your ADP system partner/client, So it will be provided by a trusted partner/client only.
Demo in Postman
Step 1: Access Token Generation
1. Make a POST request with the URL – https://accounts.adp.com/auth/oauth/v2/token
2. In the Post body, → Select x-www-form-urlencoded → and add client_id, client_secret, and grant type.

3. For adding a certificate in Postman: Go to settings → certificates → set.
Host – accounts.adp.com
Port – 443
Select the pfx file and add your p12 certificate and provide the password for it in the passphrase.

4. Make the call and you will get the access token. Copy the access token.

Step 2: Getting workers details
- Make a Get request with the URL – https://api.adp.com/hr/v2/workers
- Add the access token.
Authorization → Bearer token → Paste token
- Add the p12 certificate by following the same procedure as Step 1 part 3. For this call use.
Host – api.adp.com
- Make the call and you will get workers’ data.

Steps For Integration In Mule
1. Create a demo project in AnyPoint studio. Add an HTTP listener to trigger the flow.
2. Add your p12 certificate in src/main/resources.
3. Create one HTTP requester configuration for the ADP access token call.
host – accounts.adp.com
port – 443
In HTTP requester – TLS configuration – edit inline – check insecure – in keystore configuration.
type – pkcs12
path – <<certificate path>>
The key password and password will be the same as the passphrase used in Postman.

4. Add one more HTTP requester configuration for the ADP API call. Follow the same procedure as above. In the host use – api.adp.com and the rest will be the same as above.
5. Now in Mule flow, create a transform message to set the client ID and client secret required for the token call.

6. Add the first HTTP requester to make the token call. In the path give – /auth/oauth/v2/token. After this add a transform message to capture the access token in headers.

7. Add a second HTTP requester which is used to make the call to the ADP system. In path give – /hr/v2/workers. Also in headers pass the variable used to save the token.
8. Save the application and run. Hit the request from the postman and you will get a successful response.

References
1) All ADP API: https://developers.adp.com/articles/api/hcm-offrg-wfn/apiexplorer
2) ADP workers API: https://developers.adp.com/articles/api/hcm-offrg-wfn/hcm-offrg-wfn-hr-workers-v2-workers/apiexplorer
3) Filtering in ADP API calls: https://developers.adp.com/articles/general/introduction-to-adp-api-open-data-protocol-odata