> ## Documentation Index
> Fetch the complete documentation index at: https://lava.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ADP

> ADP Workforce Now REST API access for reading workers, demographics, pay statements, time-off, and organization data for a connected ADP account.

ADP Workforce Now REST API access for reading workers, demographics, pay statements, time-off, and organization data for a connected ADP account. Use when an agent needs worker records or payroll data from ADP. Routes through Pipedream Connect, which also terminates ADP's mutual-TLS handshake, so Lava holds no ADP certificate or token.

5 example endpoints available through Lava's AI Gateway. See the [ADP API docs](https://developers.adp.com) for full documentation.

<Warning>This provider requires your own credentials — connect your API key or OAuth account before use.</Warning>

<Info>This is a **catch-all provider** — any valid URL under `https://api.adp.com` is supported. ADP Workforce Now REST API. Base [https://api.adp.com](https://api.adp.com). Common roots: /hr/v2/workers (list), /hr/v2/workers/\{aoid} (one worker; \{aoid} is the Associate OID), /hr/v2/worker-demographics, /payroll/v1/workers/\{aoid}/pay-statements, /time/v2/time-off-requests, /hr/v2/organization-departments. Pagination is OData: $top (page size, WFN max 100) and $skip (offset), plus $select and $filter. SSN and date of birth are masked by default. ADP normally requires a mutual-TLS client certificate; Pipedream handles that handshake, so just send the path. Auth is brokered by Pipedream, do not send an Authorization header. This provider is read-only: only GET requests are supported. The endpoints below are curated examples.</Info>

## Endpoints

### List workers the connection is authorized to view. Paginate with $top (max 100) and $skip.

**GET** `https://api.adp.com/hr/v2/workers?$top=50` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.adp.com/hr/v2/workers?$top=50', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.adp.com%2Fhr%2Fv2%2Fworkers%3F%24top%3D50" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### Get a single worker by Associate OID (aoid).

**GET** `https://api.adp.com/hr/v2/workers/{aoid}` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.adp.com/hr/v2/workers/{aoid}', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.adp.com%2Fhr%2Fv2%2Fworkers%2F%7Baoid%7D" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List worker demographics (name, contact, status). Use /hr/v2/worker-demographics/\{aoid} for one worker.

**GET** `https://api.adp.com/hr/v2/worker-demographics?$top=50` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.adp.com/hr/v2/worker-demographics?$top=50', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.adp.com%2Fhr%2Fv2%2Fworker-demographics%3F%24top%3D50" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List a worker's pay statements; fetch one with /payroll/v1/workers/\{aoid}/pay-statements/\{pay-statement-id}.

**GET** `https://api.adp.com/payroll/v1/workers/{aoid}/pay-statements` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.adp.com/payroll/v1/workers/{aoid}/pay-statements', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.adp.com%2Fpayroll%2Fv1%2Fworkers%2F%7Baoid%7D%2Fpay-statements" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

### List time-off requests.

**GET** `https://api.adp.com/time/v2/time-off-requests?$top=50` — Free

<Tabs>
  <Tab title="SDK">
    ```typescript theme={null}
    const data = await lava.gateway('https://api.adp.com/time/v2/time-off-requests?$top=50', { method: 'GET' });
    ```
  </Tab>

  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.lava.so/v1/forward?u=https%3A%2F%2Fapi.adp.com%2Ftime%2Fv2%2Ftime-off-requests%3F%24top%3D50" \
      -H "Authorization: Bearer $LAVA_SECRET_KEY"
    ```
  </Tab>
</Tabs>

## Next Steps

<CardGroup cols={2}>
  <Card title="All Providers" icon="grid" href="/gateway/supported-providers">
    Browse all supported AI providers
  </Card>

  <Card title="Forward Proxy" icon="route" href="/gateway/forward-proxy">
    Learn how to construct proxy URLs and authenticate requests
  </Card>
</CardGroup>
