ADP

ADP Workers API

Worker (employee) data access

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/adp-workers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

adp-workers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: ADP Payroll Organizations Workers API
  description: The ADP Payroll API provides programmatic access to payroll processing, payroll output data, and compensation management. REST APIs support payroll runs, payroll output retrieval (including CSV-formatted bulk data), and headcount and compensation analysis across ADP payroll platforms.
  version: 1.0.0
  contact:
    name: ADP Developer Resources
    url: https://developers.adp.com/
servers:
- url: https://api.adp.com
  description: ADP Production API
security:
- oauth2ClientCredentials: []
tags:
- name: Workers
  description: Worker (employee) data access
paths:
  /hr/v2/workers:
    get:
      operationId: listWorkers
      summary: List Workers
      description: Retrieve a collection of workers (employees and contractors) from the organization. Supports filtering by worker type, status, and OData query parameters.
      tags:
      - Workers
      parameters:
      - name: $filter
        in: query
        description: OData filter expression (e.g., workers/workAssignments/assignmentStatus/statusCode/codeValue eq 'Active')
        schema:
          type: string
        example: example_value
      - name: $select
        in: query
        description: OData select fields to return
        schema:
          type: string
        example: example_value
      - name: $top
        in: query
        description: Number of records to return
        schema:
          type: integer
          default: 25
          maximum: 100
        example: 10
      - name: $skip
        in: query
        description: Number of records to skip for pagination
        schema:
          type: integer
          default: 0
        example: 10
      responses:
        '200':
          description: Collection of workers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkersResponse'
              examples:
                Listworkers200Example:
                  summary: Default listWorkers 200 response
                  x-microcks-default: true
                  value:
                    workers:
                    - associateOID: '500123'
                      workerID: {}
                      workerDates: {}
                      workAssignments: {}
                      customFieldGroup: example_value
                    meta:
                      totalCount: 10
                      startIndex: 10
                      itemsPerPage: 10
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /hr/v2/workers/{aoid}:
    get:
      operationId: getWorker
      summary: Get Worker by Aoid
      description: Retrieve a single worker record by the ADP worker AOID (Associate OID).
      tags:
      - Workers
      parameters:
      - name: aoid
        in: path
        required: true
        description: ADP Associate Object Identifier (AOID)
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Worker details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkerResponse'
              examples:
                Getworker200Example:
                  summary: Default getWorker 200 response
                  x-microcks-default: true
                  value:
                    workers:
                    - associateOID: '500123'
                      workerID: {}
                      workerDates: {}
                      workAssignments: {}
                      customFieldGroup: example_value
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /hr/v2/workers/{aoid}/work-assignments:
    get:
      operationId: getWorkerWorkAssignments
      summary: Get Worker Work Assignments
      description: Retrieve all work assignments (positions) associated with a worker.
      tags:
      - Workers
      parameters:
      - name: aoid
        in: path
        required: true
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Work assignments for the worker
          content:
            application/json:
              schema:
                type: object
                properties:
                  workers:
                    type: array
                    items:
                      $ref: '#/components/schemas/WorkAssignment'
              examples:
                Getworkerworkassignments200Example:
                  summary: Default getWorkerWorkAssignments 200 response
                  x-microcks-default: true
                  value:
                    workers:
                    - itemID: '500123'
                      primaryIndicator: true
                      hireDate: '2026-01-15'
                      assignmentStatus:
                        statusCode: {}
                      positionID: '500123'
                      jobCode:
                        codeValue: example_value
                        shortName: example_value
                      jobTitle: example_value
                      standardHours:
                        hoursQuantity: 42.5
                        unitCode: {}
                      annualBaseRemuneration:
                        annualRateAmount: {}
                      homeOrganizationalUnits:
                      - {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /events/hr/v1/worker.hire:
    post:
      operationId: hireWorker
      summary: Hire a New Worker
      description: Submit a worker hire event to onboard a new employee or contractor into the ADP HCM system. This creates a new worker record with initial work assignment.
      tags:
      - Workers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkerHireEvent'
            examples:
              HireworkerRequestExample:
                summary: Default hireWorker request
                x-microcks-default: true
                value:
                  events:
                  - eventNameCode:
                      codeValue: worker.hire
                    data:
                      transform: {}
      responses:
        '201':
          description: Worker hire event accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventResponse'
              examples:
                Hireworker201Example:
                  summary: Default hireWorker 201 response
                  x-microcks-default: true
                  value:
                    events:
                    - eventID: '500123'
                      eventNameCode:
                        codeValue: example_value
        '400':
          $ref: '#/components/responses/BadRequest'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /events/hr/v1/worker.terminate:
    post:
      operationId: terminateWorker
      summary: Terminate a Worker
      description: Submit a worker termination event to end employment for an existing worker.
      tags:
      - Workers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WorkerTerminateEvent'
            examples:
              TerminateworkerRequestExample:
                summary: Default terminateWorker request
                x-microcks-default: true
                value:
                  events:
                  - eventNameCode:
                      codeValue: worker.terminate
                    data:
                      transform: {}
      responses:
        '201':
          description: Termination event accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventResponse'
              examples:
                Terminateworker201Example:
                  summary: Default terminateWorker 201 response
                  x-microcks-default: true
                  value:
                    events:
                    - eventID: '500123'
                      eventNameCode:
                        codeValue: example_value
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  responses:
    Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfirmMessage'
    Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfirmMessage'
    BadRequest:
      description: Bad request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfirmMessage'
    NotFound:
      description: Not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfirmMessage'
  schemas:
    Address:
      type: object
      properties:
        lineOne:
          type: string
          example: example_value
        lineTwo:
          type: string
          example: example_value
        cityName:
          type: string
          example: example_value
        countrySubdivisionLevel1:
          type: object
          properties:
            codeValue:
              type: string
          example: example_value
        postalCode:
          type: string
          example: example_value
        countryCode:
          type: string
          example: example_value
    Worker:
      type: object
      description: ADP Worker (employee or contractor)
      properties:
        associateOID:
          type: string
          description: ADP Associate Object Identifier - unique worker identifier
          example: '500123'
        workerID:
          type: object
          properties:
            idValue:
              type: string
            schemeCode:
              type: object
              properties:
                codeValue:
                  type: string
          example: '500123'
        person:
          $ref: '#/components/schemas/Person'
        workerDates:
          type: object
          properties:
            originalHireDate:
              type: string
              format: date
            terminationDate:
              type: string
              format: date
            rehireDate:
              type: string
              format: date
          example: example_value
        workAssignments:
          type: array
          items:
            $ref: '#/components/schemas/WorkAssignment'
          example: []
        customFieldGroup:
          type: object
          additionalProperties: true
          example: example_value
    WorkerResponse:
      type: object
      properties:
        workers:
          type: array
          maxItems: 1
          items:
            $ref: '#/components/schemas/Worker'
          example: []
    Person:
      type: object
      properties:
        legalName:
          type: object
          properties:
            givenName:
              type: string
            familyName1:
              type: string
            preferredSalutations:
              type: array
              items:
                type: object
          example: example_value
        birthDate:
          type: string
          format: date
          example: '2026-01-15'
        genderCode:
          type: object
          properties:
            codeValue:
              type: string
              enum:
              - M
              - F
              - N
          example: example_value
        maritalStatusCode:
          type: object
          properties:
            codeValue:
              type: string
          example: example_value
        communication:
          type: object
          properties:
            emails:
              type: array
              items:
                type: object
                properties:
                  emailUri:
                    type: string
                    format: email
            phones:
              type: array
              items:
                type: object
                properties:
                  countryDialing:
                    type: string
                  areaDialing:
                    type: string
                  dialNumber:
                    type: string
          example: example_value
        legalAddress:
          $ref: '#/components/schemas/Address'
    WorkerTerminateEvent:
      type: object
      required:
      - events
      properties:
        events:
          type: array
          items:
            type: object
            properties:
              eventNameCode:
                type: object
                properties:
                  codeValue:
                    type: string
                    enum:
                    - worker.terminate
              data:
                type: object
                properties:
                  transform:
                    type: object
                    properties:
                      workerDates:
                        type: object
                        properties:
                          terminationDate:
                            type: string
                            format: date
                      terminationReason:
                        type: object
                        properties:
                          codeValue:
                            type: string
          example: []
    WorkAssignment:
      type: object
      properties:
        itemID:
          type: string
          example: '500123'
        primaryIndicator:
          type: boolean
          example: true
        hireDate:
          type: string
          format: date
          example: '2026-01-15'
        assignmentStatus:
          type: object
          properties:
            statusCode:
              type: object
              properties:
                codeValue:
                  type: string
                  enum:
                  - Active
                  - Inactive
                  - Terminated
          example: example_value
        positionID:
          type: string
          example: '500123'
        jobCode:
          type: object
          properties:
            codeValue:
              type: string
            shortName:
              type: string
          example: example_value
        jobTitle:
          type: string
          example: example_value
        standardHours:
          type: object
          properties:
            hoursQuantity:
              type: number
            unitCode:
              type: object
              properties:
                codeValue:
                  type: string
                  enum:
                  - HRS
                  - WK
                  - MO
          example: example_value
        annualBaseRemuneration:
          type: object
          properties:
            annualRateAmount:
              type: object
              properties:
                amountValue:
                  type: number
                currencyCode:
                  type: string
          example: example_value
        homeOrganizationalUnits:
          type: array
          items:
            type: object
            properties:
              nameCode:
                type: object
                properties:
                  codeValue:
                    type: string
              unitCode:
                type: object
                properties:
                  codeValue:
                    type: string
          example: []
    ConfirmMessage:
      type: object
      properties:
        confirmMessageID:
          type: object
          properties:
            idValue:
              type: string
          example: '500123'
        processMessages:
          type: array
          items:
            type: object
            properties:
              processMessageID:
                type: object
                properties:
                  idValue:
                    type: string
              messageTypeCode:
                type: object
                properties:
                  codeValue:
                    type: string
              userMessage:
                type: object
                properties:
                  messageTxt:
                    type: string
          example: []
    WorkersResponse:
      type: object
      properties:
        workers:
          type: array
          items:
            $ref: '#/components/schemas/Worker'
          example: []
        meta:
          type: object
          properties:
            totalCount:
              type: integer
            startIndex:
              type: integer
            itemsPerPage:
              type: integer
          example: example_value
    EventResponse:
      type: object
      properties:
        events:
          type: array
          items:
            type: object
            properties:
              eventID:
                type: string
              eventNameCode:
                type: object
                properties:
                  codeValue:
                    type: string
              confirmMessage:
                $ref: '#/components/schemas/ConfirmMessage'
          example: []
    WorkerHireEvent:
      type: object
      required:
      - events
      properties:
        events:
          type: array
          items:
            type: object
            required:
            - eventNameCode
            - data
            properties:
              eventNameCode:
                type: object
                properties:
                  codeValue:
                    type: string
                    enum:
                    - worker.hire
              data:
                type: object
                properties:
                  transform:
                    type: object
                    properties:
                      worker:
                        $ref: '#/components/schemas/Worker'
          example: []
  securitySchemes:
    oauth2ClientCredentials:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://accounts.adp.com/auth/oauth/v2/token
          scopes:
            api__payroll-output-v1__read: Read payroll output data