### Applicant Onboard API v1 Guide for RUN Powered by ADP Source: https://developers.adp.com/guides/api-guides?useCaseTags=Payroll-Management Supports onboarding a new employee or contractor. A successful API call creates a new hire and a notification in RUN Powered by ADP, enabling a practitioner to login and supplement the new hire data, launching the Employee Setup Wizard to complete the hire. ```APIDOC ## Applicant Onboard API v1 (RUN Powered by ADP) ### Description Facilitates the onboarding process for new employees or contractors by creating a new hire record and triggering notifications. ### Method POST ### Endpoint /run/api/v1/onboard ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body - **firstName** (string) - Required - The first name of the new hire. - **lastName** (string) - Required - The last name of the new hire. - **email** (string) - Required - The email address of the new hire. - **hireDate** (string) - Required - The intended hire date (YYYY-MM-DD). - **workerType** (string) - Required - Type of worker (e.g., 'Employee', 'Contractor'). ### Request Example { "firstName": "Jane", "lastName": "Smith", "email": "jane.smith@example.com", "hireDate": "2024-05-01", "workerType": "Employee" } ### Response #### Success Response (201) - **newHireId** (string) - The unique identifier for the newly created hire. - **status** (string) - The status of the onboarding process. #### Response Example { "newHireId": "nh998877", "status": "Pending Setup" } ``` -------------------------------- ### Direct Deposit API Guide for RUN Powered by ADP Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= Enables users to view, add, update, and remove employees' direct deposit setup. ```APIDOC ## Direct Deposit API ### Description Views, adds, updates, and removes employees' direct deposit setup. ### Method GET, POST, PUT, DELETE ### Endpoint /api/run/direct-deposit ``` -------------------------------- ### Curl Example for Retrieving Workers Source: https://developers.adp.com/articles/guides/adp-marketplace---getting-started A cURL command example demonstrating how to authenticate and retrieve worker resources. ```APIDOC ## Curl Example for Retrieving Workers ### Description This example shows how to use cURL to make a GET request to the workers endpoint, including an Authorization header. ### Method GET ### Endpoint https://api.eu.adp.com/hr/v2/workers ### Request Example ```bash curl \ --location \ --request GET 'https://api.eu.adp.com/hr/v2/workers' \ --header 'Authorization: Bearer 024ded5f831d4483a9c606710026b09b' ``` ### Response #### Success Response (200) - **workers** (array) - A list of worker resources. #### Response Example ```json { "example": "[ { \"workerId\": \"123\", ... } ]" } ``` ``` -------------------------------- ### Filtering Workers by Department and Start Date Source: https://developers.adp.com/articles/guides/adp-marketplace---getting-started Example of filtering workers by both department and start date using the $filter query parameter. ```APIDOC ## GET /hr/v2/workers?$filter=/workers/workAssignments/homeOrganizationalUnits/nameCode/codeValue eq '000040' and /workers/workAssignments/actualStartDate ge '20200101' ### Description Retrieves worker resources that belong to department '000040' and started in or after January 1, 2020. ### Method GET ### Endpoint https://api.eu.adp.com/hr/v2/workers ### Query Parameters - **$filter** (string) - Required - Filters the collection based on department code and actual start date. Field values must be in single quotes. ### Request Example ```json { "example": "GET https://api.eu.adp.com/hr/v2/workers?$filter=/workers/workAssignments/homeOrganizationalUnits/nameCode/codeValue eq '000040' and /workers/workAssignments/actualStartDate ge '20200101'" } ``` ### Response #### Success Response (200) - **workers** (array) - A list of worker resources matching the combined filter criteria. #### Response Example ```json { "example": "[ { \"workerId\": \"123\", ... } ]" } ``` ``` -------------------------------- ### Pay Statement API Guide for ADP® AdvancedPay Source: https://developers.adp.com/guides/api-guides The Pay Statement API Guide for ADP® AdvancedPay handles the Pay Statement to get it for an employee. ```APIDOC ## Pay Statement API Guide for ADP® AdvancedPay ### Description This API guide for ADP® AdvancedPay handles retrieving pay statements for an employee. ### Method GET ### Endpoint /advancedpay/pay-statement ``` -------------------------------- ### Worker.Hire API Guide for RUN Powered by ADP Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= Implemented to support onboarding of new employee or contractor ```APIDOC ## Worker Hire API ### Description Supports the onboarding of new employees or contractors. ### Method POST ### Endpoint /api/run/worker/hire ``` -------------------------------- ### Applicant Onboard API v1 Guide for RUN Powered by ADP Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= API for applicant onboarding. ```APIDOC ## Applicant Onboard API v1 ### Description Handles the onboarding process for applicants. ### Method POST ### Endpoint /api/run/applicant/onboard/v1 ``` -------------------------------- ### Dependents API Guide for DECIDIUM Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= The Dependents Application Programming Interface (API) gets dependent information added for an associate ID. It works to get all the dependents added for an employee. It does not facilitate getting details of an individual dependent. ```APIDOC ## Dependents API ### Description Retrieves all dependent information added for an employee. Does not provide details of an individual dependent. ### Method GET ### Endpoint /api/decidium/dependents ``` -------------------------------- ### Filtering Capabilities for GET Workers V2 Collections Source: https://developers.adp.com/guides/api-guides/workers-data-collection Specific filtering capabilities available for the GET Workers V2 collection, including schema fields and API URI examples. ```APIDOC ## Filtering Capabilities on GET Workers V2 Collections ### Schema and Field Filtering | Schema | Field Name | API URI Example | |---|---|---| | `workers/associateOID` | **Associate OID** | `/hr/v2/workers?$filter=workers/associateOID eq 'xxxxxxxxxx'` | | `workers/workerID/idValue` | **Worker ID** | `/hr/v2/workers?$filter=workers/workerID/idValue eq 'xxxx'` | | `workers/workAssignments/reportsTo/associateOID` | **ReportsToID** | `/hr/v2/workers?$filter=workers/workAssignments/reportsTo/associateOID eq 'xxxxxx'` | | `workers/workerStatus/statusCode/codeValue` `effectiveDate` | **Effective Date** | `/hr/v2/workers?$filter=workers/workerStatus/statusCode/codeValue eq '2016-04-28' OR /hr/v2/workers?$filter=workers/workerStatus/statusCode/codeValue effectiveDate gt '2016-04-28' OR /hr/v2/workers?$filter=workers/workerStatus/statusCode/codeValue effectiveDate lt '2016-04-28'` | | `workers/workerStatus/statusCode/codeValue` | **Employment Status (i.e. Active, Inactive, etc.)** | `/hr/v2/workers?$filter=workers/workerStatus/statusCode/codeValue%20eq%20'xxxxxx'` | | `workers/workAssignments/payrollGroupCode` | **Paygroup** | `/hr/v2/workers?$filter=workers/workAssignments/payrollGroupCode eq 'xxx'` | | `workers/workAssignments/payrollFileNumber` | **File Number** | `/hr/v2/workers?$filter=workers/workAssignments/payrollFileNumber eq 'xxxxxx'` | | `workers/workAssignments/jobCode/codeValue` | **Job Code** | `/hr/v2/workers?$filter=workers/workAssignments/jobCode/codeValue%20eq%20'xxxxxx'` | | `workers/workAssignments/homeOrganizationalUnits/nameCode/codeValue` | **Cost Number** | `/hr/v2/workers?$filter=workers/workAssignments/homeOrganizationalUnits/nameCode/codeValue eq 'xxxxxx'` | | `workers/workAssignments/assignedOrganizationalUnits/nameCode/codeValue` | **Department ID** | `/hr/v2/workers?$filter=workers/workAssignments/assignedOrganizationalUnits/nameCode/codeValue eq 'xxxxxx'` | | `workers/workAssignments/homeWorkLocation/nameCode/codeValue` | **Reporting Location** | `/hr/v2/workers?$filter=workers/workAssignments/homeWorkLocation/nameCode/codeValue eq 'xxxxxx'` | | `workers/workAssignments/assignedWorkLocations/nameCode/codeValue` | **Job Location** | `/hr/v2/workers?$filter=workers/workAssignments/assignedWorkLocations/nameCode/codeValue eq 'xxxxxx'` | | `workers/workerDates/originalHireDate` | **Employment Hire Date** | `/hr/v2/workers?$filter=workers/workerDates/originalHireDate eq '2016-04-28' or /hr/v2/workers?$filter=workers/workerDates/originalHireDate ge '2016-04-28' or /hr/v2/workers?$filter=workers/workerDates/originalHireDate le '2016-04-28'` | | `workers/workerDates/rehireDate` | **Employment Rehire Date** | `/hr/v2/workers?$filter=workers/workerDates/rehireDate eq '2020-06-29' /hr/v2/workers?$filter=workers/workerDates/rehireDate lt '2020-06-29' /hr/v2/workers?$filter=workers/workerDates/rehireDate gt '2020-06-29'` | | `workers/workerDates/terminationDate` | **Employment Termination Date** | `/hr/v2/workers?$filter=workers/workerDates/terminationDate eq '2020-06-22' /hr/v2/workers?$filter=workers/workerDates/terminationDate lt '2020-06-22' /hr/v2/workers?$filter=workers/workerDates/terminationDate gt '2020-06-22' /hr/v2/workers?$filter=workers/workerDates/terminationDate le '2020-06-22' /hr/v2/workers?$filter=workers/workerDates/terminationDate ge '2020-06-22'` | | `workers/person/legalName/formattedName` | **Former Name** | `/hr/v2/workers?$filter=workers/person/legalName/formattedName eq 'xxxxx'` | | `workers/person/legalName/familyName1` | **Last Name** | `/hr/v2/workers?$filter=workers/person/legalName/familyName1 eq 'xxxxx'` | | `workers/person/legalName/givenName` | **First Name** | `/hr/v2/workers?$filter=workers/person/legalName/givenName eq 'xxxxx'` | | `workers/person/preferredName/formattedName` | **Preferred/Chosen Name** | `/hr/v2/workers?$filter=workers/person/preferredName/formattedName eq 'xxxxxxxx'` | ``` -------------------------------- ### Start Applicant Onboarding Process Source: https://developers.adp.com/guides/api-guides/applicant-onboard-apis-guide-for-adp-expert-brazil This API starts a new hire process by creating a hire workflow request and inputting most of the necessary data. It can be used in conjunction with Dependents POST APIs and Internship PUT API to complete candidate data. ```APIDOC ## POST /hcm/v2/applicant.onboard ### Description Starts a new hire process, creating the hire workflow request and inputting essential data. This API is part of the applicant onboarding management. ### Method POST ### Endpoint /hcm/v2/applicant.onboard ### Parameters #### Request Body - **field1** (type) - Required/Optional - Description ### Request Example ```json { "example": "JSON Request Payload Example" } ``` ### Response #### Success Response (200) - **field1** (type) - Description #### Response Example ```json { "example": "JSON Response Payload Example" } ``` ``` -------------------------------- ### POST /events/hr/v1/worker.hire Source: https://developers.adp.com/guides/api-guides/workerhire-api-guide-for-embedded-payroll-partners-integrating-with-run-powered-by-adp Initiates the applicant onboarding process. A successful API call creates an in-progress hire applicant and launches the Employee Setup Wizard. An invite is sent to the contractor for self-registration if an email is provided. ```APIDOC ## POST /events/hr/v1/worker.hire ### Description Starts the applicant onboarding process. A successful API call creates an in-progress hire applicant under the Employee Directory onboarding section and launches the Employee Setup Wizard to complete the hire. An invite is sent to the contractor for self-registration to the given email address in the payload. If no email is present, or an invite should not be sent, the EnableEmployeeSelfServiceInvite indicator needs to be passed in the payload with a value of false. ### Method POST ### Endpoint /events/hr/v1/worker.hire?consumer-app=mkpl ### Parameters #### Query Parameters - **consumer-app** (string) - Required - Identifier for the consumer application. #### Request Body - **/events[0]/serviceCategoryCode/codeValue** (string) - Optional - The value should be "workerInformationManagement". - **/events[0]/eventNameCode/codeValue** (string) - Optional - The value should be "worker.hire". - **/events[0]/data/transform/worker/workerDates/orginalHireDate** (string) - Optional - Required if email is provided. Format: YYYY-MM-DD. - **/events[0]/data/transform/worker/workAssignments/events[0]/data/transform/workerTypeCode/codeValue** (string) - Required - Value should be "W2". - **/events[0]/data/transform/worker/workAssignments/events[0]/data/transform/workerTypeCode/shortName** (string) - Optional - Value should be "Employee". - **/events[0]/data/transform/worker/person/governmentIDs/idValue** (string) - Optional - Social security number. - **/events[0]/data/transform/worker/person/governmentIDs/nameCode/codeValue** (string) - Optional - Default value is "SSN". Required if governmentIDs/idValue is provided. - **/events[0]/data/transform/worker/person/governmentIDs/nameCode/shortName** (string) - Optional - Default value is "Social Security Number". - **/events[0]/data/transform/worker/person/legalName/givenName** (string) - Required - First name. - **/events[0]/data/transform/worker/person/legalName/familyName1** (string) - Required - Last name. - **/events[0]/data/transform/worker/person/communication/emails/nameCode/codeValue** (string) - Optional - Value should be "Personal". - **/events[0]/data/transform/worker/person/communication/emails/nameCode/shortName** (string) - Optional. - **/events[0]/data/transform/worker/person/communication/emails/nameCode/longName** (string) - Optional. - **/events[0]/data/transform/worker/person/communication/emails/emailUri** (string) - Optional - Value for the field is a personal email. - **/events[0]/data/transform/worker/person/birthDate** (string) - Optional - Date of birth. Format: YYYY-MM-DD. - **/events[0]/data/transform/worker/customFieldGroup/indicatorFields[0]/nameCode/shortName** (string) - Required - Value for the field should be "EnableEmployeeSelfServiceInvite". - **/events[0]/data/transform/worker/customFieldGroup/indicatorFields[0]/indicatorValue** (string) - Required - Value for the field is either "true" or "false". Value should be "false" when email is not provided in the payload or when email invite should not be sent to employee. ### Request Example ```json { "events": [ { "serviceCategoryCode": {"codeValue": "workerInformationManagement"}, "eventNameCode": {"codeValue": "worker.hire"}, "data": { "transform": { "worker": { "workerDates": {"orginalHireDate": "2023-10-27"}, "workAssignments": [ { "data": {"transform": {"workerTypeCode": {"codeValue": "W2", "shortName": "Employee"}}} } ], "person": { "governmentIDs": [ { "idValue": "***-**-****", "nameCode": {"codeValue": "SSN", "shortName": "Social Security Number"} } ], "legalName": {"givenName": "John", "familyName1": "Doe"}, "communication": {"emails": [{"nameCode": {"codeValue": "Personal"}, "emailUri": "john.doe@example.com"}]}, "birthDate": "1990-01-01" }, "customFieldGroup": {"indicatorFields": [{"nameCode": {"shortName": "EnableEmployeeSelfServiceInvite"}, "indicatorValue": "true"}]} } } } } ] } ``` ### Response #### Success Response (200) - **Success Response Body**: Details of the created hire applicant and onboarding status. #### Response Example ```json { "message": "Worker hire initiated successfully." } ``` ``` -------------------------------- ### GET /events/payroll/v2/worker-general-deduction-instruction.start/meta Source: https://developers.adp.com/apis/api-explorer/hcm-offrg-ent/hcm-offrg-ent-payroll-worker-payroll-instructions-v1-worker-payroll-instructions?operation=POST%2Fevents%2Fpayroll%2Fv2%2Fworker-general-deduction-instruction.stop Returns metadata for the Start Worker General Deduction Instruction event. ```APIDOC ## GET /events/payroll/v2/worker-general-deduction-instruction.start/meta ### Description Returns an event metadata for starting worker general deduction instruction. ### Method GET ### Endpoint /events/payroll/v2/worker-general-deduction-instruction.start/meta ### Response #### Success Response (200) - **metadata** (object) - The metadata for the event. #### Response Example ```json { "metadata": { "fields": [ { "name": "workerGeneralDeductionInstruction", "type": "object", "required": true } ] } } ``` ``` -------------------------------- ### Pay Statements API Guide for ADP LINK Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= Get pay statements information for an employee. ```APIDOC ## Pay Statements API Guide for ADP LINK ### Description The Pay Statements Application Programming Interface (API) gets pay statements information for an employee. ### Method GET ### Endpoint /api/link/paystatements ``` -------------------------------- ### POST /events/hr/v1/worker.hire Source: https://developers.adp.com/guides/api-guides/workerhire-api-guide-for-embedded-payroll-partners-integrating-with-run-powered-by-adp Initiates the applicant onboarding process for a new worker, creating an in-progress hire applicant and launching the Employee Setup Wizard. An invite is sent to the provided email address for self-registration. ```APIDOC ## POST /events/hr/v1/worker.hire ### Description Starts the applicant onboarding process. A successful API call creates an in-progress hire applicant under the Employee Directory onboarding section and launches the Employee Setup Wizard to complete the hire. An invite is sent to the company for self-registration to the given email address in the payload. If no email is present, or an invite should not be sent, `EnableEmployeeSelfServiceInvite` indicator needs to be passed in the payload with a value of `false`. ### Method POST ### Endpoint /events/hr/v1/worker.hire?consumer-app=mkpl ### Parameters #### Query Parameters - **consumer-app** (string) - Required - Value should be **mkpl**. ### Request Body #### Individual Contractor Schema - **/events[0]/serviceCategoryCode/codeValue** (string) - Optional - Value should be **workerInformationManagement**. - **/events[0]/eventNameCode/codeValue** (string) - Optional - Value should be **worker.hire**. - **/events[0]/data/transform/worker/workerDates/orginalHireDate** (string) - Optional - Required if email is provided. Hire date. - **/events[0]/data/transform/worker/workAssignments/events[0]/data/transform/workerTypeCode/codeValue** (string) - Required - Value should be **1099**. - **/events[0]/data/transform/worker/workAssignments/events[0]/data/transform/workerTypeCode/shortName** (string) - Optional - Value should be **Contractor**. - **/events[0]/data/transform/worker/person/governmentIDs/idValue** (string) - Optional - Social security number. - **/events[0]/data/transform/worker/person/governmentIDs/nameCode/codeValue** (string) - Optional - Default value is **SSN**. - **/events[0]/data/transform/worker/person/governmentIDs/nameCode/shortName** (string) - Optional - Default value is **Social Security Number**. Required if `governmentIDs/idValue` is provided. - **/events[0]/data/transform/worker/person/legalName/givenName** (string) - Required - First name. - **/events[0]/data/transform/worker/person/legalName/familyName1** (string) - Required - Last name. - **/events[0]/data/transform/worker/person/communication/emails/nameCode/codeValue** (string) - Optional - Value should be **Personal**. - **/events[0]/data/transform/worker/person/communication/emails/nameCode/shortName** (string) - Optional. - **/events[0]/data/transform/worker/person/communication/emails/nameCode/longName** (string) - Optional. - **/events[0]/data/transform/worker/person/communication/emails/emailUri** (string) - Optional - Value for the field is an email. - **/events[0]/data/transform/worker/customFieldGroup/indicatorFields[0]/nameCode/shortName** (string) - Required - Value for the field should be **EnableEmployeeSelfServiceInvite**. - **/events[0]/data/transform/worker/customFieldGroup/indicatorFields[0]/indicatorValue** (boolean) - Required - Value for the field is either **true** or **false**. Value should be **false** when email is not provided in the payload or when email invite should **not** be sent to contractor. ### Request Example ```json { "events": [ { "serviceCategoryCode": { "codeValue": "workerInformationManagement" }, "eventNameCode": { "codeValue": "worker.hire" }, "data": { "transform": { "worker": { "workerDates": { "orginalHireDate": "2023-10-27T00:00:00.000Z" }, "workAssignments": [ { "events": [ { "data": { "transform": { "workerTypeCode": { "codeValue": "1099", "shortName": "Contractor" } } } } ] } ], "person": { "governmentIDs": [ { "idValue": "***", "nameCode": { "codeValue": "SSN", "shortName": "Social Security Number" } } ], "legalName": { "givenName": "John", "familyName1": "Doe" }, "communication": { "emails": [ { "nameCode": { "codeValue": "Personal" }, "emailUri": "john.doe@example.com" } ] } }, "customFieldGroup": { "indicatorFields": [ { "nameCode": { "shortName": "EnableEmployeeSelfServiceInvite" }, "indicatorValue": true } ] } } } } } ] } ``` ### Response #### Success Response (200) - **Success** (boolean) - Indicates if the operation was successful. - **Message** (string) - A message describing the result of the operation. #### Response Example ```json { "Success": true, "Message": "Worker hire initiated successfully." } ``` ``` -------------------------------- ### Retrieve Userinfo API Request Example Source: https://developers.adp.com/guides/adp-marketplace-integration-guides/authorization-process-end-user-apps This is an example HTTP GET request to the userinfo Web API to retrieve an end-user's profile information. Ensure the Authorization header contains a valid Bearer token. ```http GET /core/v1/userinfo HTTP/1.1 Host: api.adp.com Authorization: Bearer 024ded5f831d4483a9c606710026b09b Accept: application/json ``` -------------------------------- ### Make a Feature Call with Authorization Header Source: https://developers.adp.com/getting-started/key-concepts/troubleshoot-app-integrations-with-adp Example of how to make a feature call from the command line, including the necessary 'Authorization' header with the obtained access token. ```bash # Example for making a feature call (conceptual, actual command depends on the feature) ``` -------------------------------- ### Applicant Onboard API Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= This API is implemented to support onboarding a new employee or contractor. A successful API call creates a new hire and a notification in RUN Powered by ADP, enabling a practitioner to login and supplement the new hire data, launching the Employee Setup Wizard to complete the hire. ```APIDOC ## Applicant Onboard API ### Description Supports onboarding a new employee or contractor. Creates a new hire and a notification in RUN Powered by ADP. ### Method POST ### Endpoint /api/onboard/applicant ### Request Body - **applicantData** (object) - Required - Details of the applicant to be onboarded. ### Response #### Success Response (201) - **hireId** (string) - The ID of the newly created hire. - **notificationId** (string) - The ID of the generated notification. ``` -------------------------------- ### Organization Units API Guide Source: https://developers.adp.com/guides/api-guides The Organization Units Application Programming Interface (API) gets organization Units details. ```APIDOC ## Organization Units API ### Description Retrieves details about organization units. ### Method GET ### Endpoint /api/organization/units ### Query Parameters - **clientId** (string) - Required - The ID of the client. - **unitType** (string) - Optional - Filters units by type. ``` -------------------------------- ### Deduction Instruction Guide for ADP Workforce Now Next Gen Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery= Get payroll instructions and manage deductions at the employee level. ```APIDOC ## Deduction Instruction Guide for ADP Workforce Now Next Gen ### Description This guide provides information about Get payroll Instructions, Start, change & stop deductions at employee level. ### Method GET, POST, PUT, DELETE ### Endpoint /api/workforcenow/deductions ``` -------------------------------- ### JSON Configuration File Example Source: https://developers.adp.com/guides/api-guides/adp-smartcompliance-employment-verification-api-specification The configuration file must be in JSON format and match the employee record filename. It includes requestor information, consent status, verification type, and response filters. ```json { { "requestorInfo": { "marketSegmentCode": "Batch", "verifierName": "ABC Bank" }, "associateConsentReceivedIndicator": true, "verificationType": "recommendations", "responseFilters": { "ytdReturnedIndicator": true } } } ``` -------------------------------- ### GET HR - Worker (List) API Call Source: https://developers.adp.com/articles/guides/Making-Your-First-API-Call-With-POSTMAN Example of making a GET request to the HR - Worker (List) API using an Authorization header with a bearer token. A cache-buster query parameter can be added to prevent browser caching issues. ```N/A Open the HR > Worker (List) request and click Headers to expose the headers. Paste your bearer token into the Authorization header and click Send. Remember to leave the Bearer and a space to the left of your token. Since Postman is a browser-based application, the browser caching mechanism will save responses to the cache. To ensure that changes you make in ADP applications are reflected in Postman, we recommend placing a cache-buster into the query string between each request. For example, `preventCache=timestamp`, where timestamp is a unique value such as the current time. You won't need to do this when you're building your application because browser-based caching won't come into play. If your request was successful, you'll receive an HTTP 200 message from the server within a few records. The following sample shows a response of the GET HR - Worker (List) API request: ``` -------------------------------- ### Applicant Onboard API v1 Guide for RUN Powered by ADP Source: https://developers.adp.com/articles/guides/all/productIntegration/productIntegration?filterQuery=&product=ADP-eXpert%C2%AE API to manage the onboarding process for applicants. ```APIDOC ## API for Applicant Onboarding (v1) ### Description Manages the onboarding process for applicants, converting them into employees or contractors. ### Method POST ### Endpoint /api/v1/run/applicant-onboard ### Parameters #### Request Body - **onboarding_details** (object) - Information required for applicant onboarding. - **applicant_id** (string) - Required - The unique identifier for the applicant. - **hire_date** (string) - Required - The date the applicant is hired (YYYY-MM-DD). - **worker_type** (string) - Required - Type of worker ('employee', 'contractor'). - **position_id** (string) - Optional - The ID of the position the applicant is hired for. ### Request Example ```json { "onboarding_details": { "applicant_id": "app999", "hire_date": "2024-08-15", "worker_type": "employee", "position_id": "pos123" } } ``` ### Response #### Success Response (201) - **worker_id** (string) - The unique identifier for the newly onboarded worker. - **status** (string) - The status of the onboarding process (e.g., 'onboarded', 'pending_completion'). - **message** (string) - A confirmation message. #### Response Example ```json { "worker_id": "w3344", "status": "onboarded", "message": "Applicant successfully onboarded." } ``` ``` -------------------------------- ### cURL Request for Worker Data Source: https://developers.adp.com/articles/guides/adp-marketplace---getting-started Example using cURL to perform a GET request for worker data, including an Authorization header. ```bash curl \ --location --request GET 'https://api.eu.adp.com/hr/v2/workers' \ --header 'Authorization: Bearer 024ded5f831d4483a9c606710026b09b' ``` -------------------------------- ### POST /hcm/v2/applicant.onboard Source: https://developers.adp.com/articles/preview/guide-use-case-onboard-an-applicant-0 This endpoint starts the hire process for a new worker by onboarding an applicant. ```APIDOC ## POST /hcm/v2/applicant.onboard ### Description Starts a hire process for a new worker. ### Method POST ### Endpoint /hcm/v2/applicant.onboard ### Parameters #### Path Parameters There are no path parameters. #### Query Parameters There is no support for OData parameters. #### Request Body - **hireDate** (string) - Required - The new hire date. - **collaborationType** (string) - Required - The collaboration type. See Standard Code Lists. - **familyName1** (string) - Required - The associate’s family name. - **givenName** (string) - Required - The associate’s given Name. - **genderCode** (string) - Required - See Standard Code Lists. - **assignedWorkLocations nameCode** (string) - Required - The associate’s entity in legal structure. Value controlled by reference control table H2. - **jobCode** (string) - Optional - The associate’s job in professional position. Only for INT and SAL. Could be empty if jobTitle is filled. Value controlled by reference control table EMPLO. - **jobTitle** (string) - Optional - The associate’s individualized job. Only for INT and SAL. Could be empty if jobCode is filled. - **workerTypeCode** (string) - Required - The associate’s contract type. Only for SAL and STA. Value controlled by reference control table NATCT. - **recoursReason** (string) - Optional - The associate’s contract type. Only for SAL,STA, INT. Could be empty (depends on workerTypeCode). Value controlled by reference control table RECOU. - **contractType** (string) - Optional - The associate’s contract type. (depends on workerTypeCode and recourReason). Only for SAL and STA. Value controlled by reference control table TYCT. - **expectedTerminationDate** (string) - Optional - The associate’s end date of contract. Mandatory only if CDD. ### Request Example ```json { "applicantWorkerProfile": { "hireDate": "2023-10-27", "collaborationType": { "code": "SAL" }, "customFieldGroup": { "codeFields": [ { "itemID": "collaborationType", "code": "SAL" } ] }, "job": { "jobCode": { "code": "12345" }, "jobTitle": "Software Engineer" }, "workerTypeCode": { "code": "EMP" }, "recoursReason": { "code": "REASON1" }, "contractType": { "code": "TYCT1" }, "expectedTerminationDate": "2024-10-27" }, "applicantPersonalProfile": { "legalName": { "familyName": "Doe", "givenName": "John" }, "genderCode": { "code": "M" } }, "assignedWorkLocations": [ { "nameCode": { "code": "LOC1" } } ] } ``` ### Response #### Success Response (200) - **message** (string) - Indicates that the application was able to create the file. #### Response Example ```json { "message": "Applicant onboarded successfully." } ``` #### Error Responses - **400 - Failed**: Indicates that the application was not able to create the file and displays the specific reason. - **User Error - La donnée XXX est obligatoire**: The field xxx is a required field to initialize an hire process. - **User Error - Le champ XXX n’est pas autorisée**: The field xxx is not authorized by data entitlement. - **User Error - Le matricule 'xxxxx' existe déjà**: WorkerID must be unique. - **User Error - L'emploi ou l'emploi individualisé est obligatoire pour les salariés et intérimaires**: jobCode or jobTtitle is mandatory for INT or SAL. - **User Error - Aucune entrée trouvée dans la table XXX pour le critère : code = %field value%**: The value is controlled by reference control table and it is not found in the table XXX. - **User Error - La donnée XXX est obligatoire pour les salariés et stagiaires**: The field XXX is mandatory for collaboration type SAL,STA. - **User Error - L'adresse électronique 'XXX' ne respecte pas la norme RFC5322**: The field emailUri is wrong: contains spaces or special characters. ``` -------------------------------- ### Pay Advance Request API Guide for ADP Link Source: https://developers.adp.com/guides/api-guides Get pay advance requests and request pay advances for an employee. ```APIDOC ## Pay Advance Request API ### Description This API allows retrieval of pay advance request information for an employee and enables requesting a pay advance. ### Method GET, POST ### Endpoint /api/v1/adplink/employees/{employeeId}/pay-advances ### Parameters #### Path Parameters - **employeeId** (string) - Required - The unique identifier for the employee. #### Request Body (for POST) - **advanceAmount** (number) - Required - The requested amount for the pay advance. - **reason** (string) - Optional - The reason for the pay advance request. - **requestDate** (string) - Required - The date the request is made (YYYY-MM-DD). ### Request Example (POST) ```json { "advanceAmount": 200.00, "reason": "Unexpected expense", "requestDate": "2024-09-05" } ``` ### Response #### Success Response (200) (for GET) - **requests** (array) - A list of pay advance request objects. - **requestId** (string) - The unique identifier for the request. - **advanceAmount** (number) - The requested advance amount. - **status** (string) - The status of the request (e.g., 'Pending', 'Approved', 'Rejected'). - **requestDate** (string) - The date the request was made. #### Response Example (GET) ```json { "requests": [ { "requestId": "paReq123", "advanceAmount": 200.00, "status": "Pending", "requestDate": "2024-09-05" } ] } ``` #### Success Response (201) (for POST) - **requestId** (string) - The unique identifier for the newly created request. - **message** (string) - Confirmation message. #### Response Example (POST) ```json { "requestId": "paReq456", "message": "Pay advance request submitted successfully." } ``` ``` -------------------------------- ### New Hire Onboarding Process Management APIs Source: https://developers.adp.com/build/api-explorer/pr-offrg-paisy.advd/pr-offrg-paisy.advd-hcm-applicant-onboarding-v2-applicant-onboarding?operation=GET%2Fhcm%2Fv2%2Fapplicants%2F%7Bapplicant-id%7D%2Fonboarding APIs to manage the applicant onboarding process for new hire applicants. ```APIDOC ## POST /hcm/v2/applicants/{applicant-id}/onboarding.complete ### Description This use case is for completing an existing applicant onboarding process. ### Method POST ### Endpoint /hcm/v2/applicants/{applicant-id}/onboarding.complete ### Parameters #### Path Parameters - **applicant-id** (string) - Required - The unique identifier of the applicant. ### Request Example (Example request body not provided in source) ### Response #### Success Response (200) (Response details not provided in source) #### Response Example (Example response body not provided in source) ``` ```APIDOC ## GET /hcm/v2/applicants/{applicant-id}/onboarding ### Description Data related to the applicant onboarding request. ### Method GET ### Endpoint /hcm/v2/applicants/{applicant-id}/onboarding ### Parameters #### Path Parameters - **applicant-id** (string) - Required - The unique identifier of the applicant. ### Request Example (No request body for GET requests) ### Response #### Success Response (200) (Response details not provided in source) #### Response Example (Example response body not provided in source) ``` ```APIDOC ## PUT /hcm/v2/applicants/{applicant-id}/onboarding ### Description This use case is for updating the details of an existing applicant whose onboarding process has been initiated, but yet to be completed. ### Method PUT ### Endpoint /hcm/v2/applicants/{applicant-id}/onboarding ### Parameters #### Path Parameters - **applicant-id** (string) - Required - The unique identifier of the applicant. ### Request Example (Example request body not provided in source) ### Response #### Success Response (200) (Response details not provided in source) #### Response Example (Example response body not provided in source) ``` ```APIDOC ## POST /hcm/v2/applicant.onboard ### Description This use case describes where I want to add a new applicant with limited data in ADP® AdvancedPay from my non-ADP® AdvancedPay application. This enables a practitioner to complete the hire by logging into ADP® AdvancedPay and add the missing data. ### Method POST ### Endpoint /hcm/v2/applicant.onboard ### Parameters (No parameters specified in source) ### Request Example (Example request body not provided in source) ### Response #### Success Response (200) (Response details not provided in source) #### Response Example (Example response body not provided in source) ``` -------------------------------- ### Direct Deposit API Guide for ADP Vantage HCM Source: https://developers.adp.com/guides/api-guides?useCaseTags=Payroll-Management Allows your application to manage an employee's Direct Deposit setup. ```APIDOC ## Direct Deposit API (ADP Vantage HCM) ### Description Manages employee direct deposit setups within ADP Vantage HCM. ### Method GET, POST, PUT, DELETE ### Endpoint /vantagehcm/api/employees/{employeeId}/direct-deposits ### Parameters #### Path Parameters - **employeeId** (string) - Required - The unique identifier for the employee. #### Query Parameters - **directDepositId** (string) - Optional - The unique identifier for a specific direct deposit setup. #### Request Body (Varies based on the operation - e.g., account details for adding/updating) ### Request Example (Example request body for updating a direct deposit) { "accountNumber": "112233445", "routingNumber": "554433221", "amount": 750.00, "distributionType": "Full" } ### Response #### Success Response (200) - **directDepositId** (string) - The unique identifier for the direct deposit setup. - **accountNumber** (string) - The employee's bank account number. - **routingNumber** (string) - The employee's bank routing number. - **amount** (number) - The amount to be deposited. - **distributionType** (string) - How the deposit is distributed (e.g., 'Full', 'Partial', 'Remainder'). #### Response Example { "directDepositId": "dd987654", "accountNumber": "112233445", "routingNumber": "554433221", "amount": 750.00, "distributionType": "Full" } ``` -------------------------------- ### New Hire Onboarding Process Management APIs Source: https://developers.adp.com/build/api-explorer/pr-offrg-paisy.advd/pr-offrg-paisy.advd-hcm-applicant-onboarding-v2-applicant-onboarding?operation=POST%2Fhcm%2Fv2%2Fapplicant.onboard APIs to manage the applicant onboarding process for new hire applicants. ```APIDOC ## POST /hcm/v2/applicants/{applicant-id}/onboarding.complete ### Description This use case is for completing an existing applicant onboarding process. ### Method POST ### Endpoint /hcm/v2/applicants/{applicant-id}/onboarding.complete ### Parameters #### Path Parameters - **applicant-id** (string) - Required - The ID of the applicant. ### Request Body (No specific request body fields are detailed in the provided text.) ### Response #### Success Response (200) (No specific success response fields are detailed in the provided text.) ``` ```APIDOC ## GET /hcm/v2/applicants/{applicant-id}/onboarding ### Description Data related to the applicant onboarding request. ### Method GET ### Endpoint /hcm/v2/applicants/{applicant-id}/onboarding ### Parameters #### Path Parameters - **applicant-id** (string) - Required - The ID of the applicant. ### Response #### Success Response (200) (No specific success response fields are detailed in the provided text.) ``` ```APIDOC ## PUT /hcm/v2/applicants/{applicant-id}/onboarding ### Description This use case is for updating the details of an existing applicant whose onboarding process has been initiated, but yet to be completed. ### Method PUT ### Endpoint /hcm/v2/applicants/{applicant-id}/onboarding ### Parameters #### Path Parameters - **applicant-id** (string) - Required - The ID of the applicant. ### Request Body (No specific request body fields are detailed in the provided text.) ### Response #### Success Response (200) (No specific success response fields are detailed in the provided text.) ``` ```APIDOC ## POST /hcm/v2/applicant.onboard ### Description This use case describes where I want to add a new applicant with limited data in ADP® AdvancedPay from my non-ADP® AdvancedPay application. This enables a practitioner to complete the hire by logging into ADP® AdvancedPay and add the missing data. ### Method POST ### Endpoint /hcm/v2/applicant.onboard ### Parameters (No specific parameters are detailed in the provided text.) ### Request Body (No specific request body fields are detailed in the provided text.) ### Response #### Success Response (200) (No specific success response fields are detailed in the provided text.) ```