canonical: https://jentic.com/apis/dayforce.com/dayforce

# Dayforce API

The Dayforce API exposes Dayforce's human capital management platform - HR records, payroll runs, scheduling, and timecards - as a REST surface for downstream systems. The five endpoints in this spec cover the core read patterns: list and resolve employees, retrieve payroll runs, fetch timecards, and read schedules. Authentication uses an API key in the Authorization header. Dayforce powers payroll and workforce management for thousands of mid-market and enterprise employers globally.

## For AI agents

Read employee records, payroll runs, schedules, and timecards from Dayforce's HCM platform.

## Scope

Does not handle benefits enrolment, recruiting ATS, or learning management - use for employee, payroll, schedule, and timecard reads only.

## Capabilities

- List active employees via GET /employees
- Resolve a single employee record via GET `/employees/{employeeId}`
- Pull payroll run summaries via GET `/payroll/runs`
- Retrieve timecard records via GET /timecards
- Read scheduled shifts via GET /schedules
- Power read-only HR dashboards and downstream sync jobs without scraping the Dayforce UI

## Use cases

### HR Data Warehouse Sync

Data teams sync Dayforce employee records into a warehouse (Snowflake, BigQuery) so analytics models join HR attributes against operational data. GET /employees paginates the active roster and GET `/employees/{employeeId}` resolves any record needing an enrichment refresh. The pattern keeps Dayforce as the system of record while letting downstream BI work against a queryable copy.

Example prompt: Page through GET /employees, write each record to a Snowflake stage table, and reconcile the active count against the previous run

### Payroll Audit Reporting

Finance and audit teams pull payroll run summaries via GET `/payroll/runs` to verify pay-period totals, run reconciliation against accounting entries, and surface anomalies before close. Because the data is read directly from the Dayforce system of record, audit reports stay aligned with what employees see on their pay stub.

Example prompt: Fetch the last three payroll runs via GET `/payroll/runs` and produce a CSV with totals by pay group

### Workforce Schedule Visibility

Operations leaders read schedules and timecards programmatically to build coverage dashboards and overtime alerts. GET /schedules returns assigned shifts, GET /timecards returns the actual clocked hours, and the difference highlights coverage gaps and unplanned overtime - all without operating in the Dayforce native scheduling UI.

Example prompt: Pull this week's schedules and timecards, compute scheduled-vs-actual hours per employee, and flag anyone over 40 hours actual

### AI Agent HR Assistant

AI HR assistants use Jentic to call Dayforce for employee lookups, schedule checks, and payroll status questions raised by managers. Jentic isolates the Dayforce API key in its vault so the agent only handles employee IDs and date ranges, never the credential.

Example prompt: Look up employee 12345's last two timecards and the most recent payroll run that covered them, and summarise hours worked vs paid

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/employees` | List active employees |
| GET | `/employees/{employeeId}` | Resolve a single employee record |
| GET | `/payroll/runs` | Retrieve payroll run summaries |
| GET | `/timecards` | Read timecard records |
| GET | `/schedules` | Read assigned shift schedules |

## Key resources

- **Employees** — List and resolve employee records
- **Payroll** — Retrieve payroll run summaries
- **Scheduling** — Read assigned shift schedules
- **Time** — Read timecards and clocked hours

## Why Jentic

- **Setup:** Wiring Dayforce by hand means learning its API key auth in the Authorization header and mapping the separate employee, payroll, timecard, and schedule endpoints yourself. Through Jentic you install once, import Dayforce from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** Dayforce puts the employee id in the URL path (`/employees/{employeeId}`), so a rule can pin your agent to a single employee record for reads. Every operation here is a GET, so you grant read access to employees, payroll runs, timecards, or schedules and nothing that mutates state.
- **Credential handling:** Your Dayforce API key is stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'list Dayforce employees' or 'fetch a payroll run', and Jentic returns the matching operation with its parameters so the agent calls the right endpoint without reading developer.dayforce.com.

## Related APIs

- **Workday** — Workday is a competing enterprise HCM with broader HR and finance scope.
- **BambooHR** — BambooHR targets small/mid-market HRIS; Dayforce covers payroll and workforce management at higher complexity.
- **Gusto** — Gusto provides payroll and benefits primarily for SMB; Dayforce serves mid-market and enterprise.

## FAQ

### What authentication does the Dayforce API use?

Dayforce uses an API key passed in the Authorization header on every request. Through Jentic, that key lives in your Jentic One instance and is injected at call time, so HR agents never see the raw secret.

### Can I retrieve employee records with the Dayforce API?

Yes. GET /employees lists active employees and GET `/employees/{employeeId}` resolves a specific record. Both are read-only in this spec and return the standard Dayforce employee model.

### What are the rate limits for the Dayforce API?

The OpenAPI spec does not declare per-endpoint rate limits. Production tenants typically have plan-specific concurrency caps documented at developers.dayforce.com - coordinate with your Dayforce admin for high-volume sync jobs.

### How do I retrieve a payroll run summary through Jentic?

Search Jentic for 'retrieve a Dayforce payroll run', load the GET `/payroll/runs` operation, and execute it. Jentic injects the API key and returns the run summaries in JSON, ready for downstream reconciliation.

### Does the Dayforce API expose write operations?

This spec exposes read-only endpoints for employees, payroll runs, schedules, and timecards. Writes (creating employees, posting timecards) are not part of this surface.

### Can I use the Dayforce API to build a workforce dashboard?

Yes. GET /schedules and GET /timecards together support scheduled-vs-actual coverage reporting, and GET /employees provides the underlying roster for grouping. Most dashboards combine these three calls on a polling schedule.

### Can I limit what my agent is allowed to do with the Dayforce API?

Yes. Because you run Jentic One yourself, your own rules decide which Dayforce operations and credentials your agent may use. Every endpoint here is a GET, so you can grant read access to just the operations you need, such as GET /employees, GET `/payroll/runs`, GET /timecards, or GET /schedules, and withhold the rest. Since the employee id sits in the URL path at GET `/employees/{employeeId}`, a rule can even pin the agent to a single employee record.
