Product
Jentic OSThe workplace. An in-house AI platform for every employeeJentic OneSafe access. Agents reach your systems without holding keysJentic AIRThe foundation. Gets your existing platforms ready for AI
Pricing
Developers

GET STARTED

API DirectoryBrowse 10,000+ APIs Ready For AI Agent IntegrationDocumentationGuides and API reference

TOOLS

API ScoringCheck your AI Readiness using our scorecardArazzo UIVisualize Arazzo Workflows As Interactive DocumentationArazzo EditorBuild And Edit Multi-Step API Workflows Visually

COMMUNITY

GitHubOpen source projects and examplesOpen StandardsBuilt on open specs. Never locked in.
Resources
Company
About UsOur mission and teamCareersJoin our teamContactGet in touch
Try it now
Jentic OSJentic OneJentic AIR
Pricing
API DirectoryDocumentationAPI ScoringArazzo UIArazzo EditorGitHubOpen Standards
Resources
About UsCareersContact
Try it now
JenticJentic
Products
  • Jentic OS
  • Jentic One
  • Jentic AIR
For Developers
  • API Directory
  • Documentation
  • GitHub
Company
  • About Jentic
  • Careers
  • Contact Us
  • Trust Centre
ISO/IEC 27001:2022 certification badge issued by Prescient SecurityISO/IEC 27001:2022 certification badge issued by Prescient Security

Information Security Management System

Certified to ISO/IEC 27001:2022 by Prescient Security

Terms & Conditions•Privacy Policy•
© 2026 Jentic. All rights reserved.
Switch to light modeSwitch to dark mode
APIs / HR recruiting / Apideck / HRIS API
HRIS API logo

Apideck HRIS API

Browse all Apideck APIs
Official vendor OpenAPI document · agent-readyHR recruitingEmployee ManagementapiKey25 EndpointsREST

For Agents

Read and write employee, company, department, and time-off data across BambooHR, Gusto, Workday, ADP, Rippling, and other HRIS providers through one unified API.

Use for: List all active employees in the connected HRIS, Create a new employee record for a recently hired developer, Update an employee's department after an internal transfer, Submit a time-off request for an employee for next Friday

Not supported: Does not run payroll, manage benefits enrollment, or handle ATS/recruiting workflows - use for employee, department, time-off, and read-only payroll data only.

The Apideck HRIS API is a unified interface across HR information systems including BambooHR, Gusto, Workday, ADP, and Rippling. A single set of 25 endpoints covers employees, companies, departments, payrolls, employee schedules, and time-off requests, eliminating the need to maintain a separate integration per HRIS vendor. Employee records support the standard CRUD lifecycle, while payroll endpoints are read-only - payroll runs are surfaced as data, not triggered through this API. Time-off requests can be created and updated, making it usable for self-service leave workflows.

Jentic One on GithubView OpenAPI Document

Install Jentic One Beta

Connect the HRIS API to your agent

Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the HRIS API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.

Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.

1

Step 1: Jentic One Host machine

# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fapideck.com%2Fhris" | sh
2

Step 2: Agent machine

# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fapideck.com%2Fhris" | sh
jentic register       # connects your agent to your Jentic One instance

Jentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.

Capabilities

What an agent can do with HRIS API.

List, create, retrieve, update, and delete employee records across the connected HRIS

Manage company and department records to model the connected organisation's structure

Read payroll runs and per-employee payroll line items for downstream finance reconciliation

Submit, update, and cancel employee time-off requests through the time-off-requests endpoints

Retrieve employee work schedules under /hris/schedules/employees/{employee_id}

Look up an individual employee's payroll history with GET /hris/payrolls/employees/{employee_id}

Use Cases

Patterns agents use HRIS API for, with concrete tasks.

★ Cross-HRIS Employee Sync

Pull a normalised employee directory from whichever HRIS a customer uses (BambooHR, Gusto, Workday, ADP, Rippling) into a SaaS product without writing per-vendor integrations. The HRIS Unified API exposes the same 25 endpoints regardless of provider, so a single GET /hris/employees pagination loop syncs the directory across the customer base. Useful for IT provisioning, security tooling, or employee directory features.

Page through GET /hris/employees with limit=100 until the cursor returns null, returning a deduped list of employee_id, full_name, department, and employment_status

Self-Service Time Off

Build an internal Slack bot or chat app that lets employees submit, check, and cancel time-off requests without leaving the chat surface. POST /hris/time-off-requests creates a new request, GET retrieves its status, PATCH updates start/end dates, and DELETE cancels it. The same flow works across all HRIS providers Apideck supports.

Submit a vacation request for employee_id 'emp_42' from 2026-08-10 to 2026-08-14 with type 'vacation' and verify the resulting status is 'pending'

Payroll Reconciliation Feed

Pull payroll run data from the customer's HRIS into an accounting or analytics system. GET /hris/payrolls lists runs, GET /hris/payrolls/{payroll_id} returns the detail of one run, and GET /hris/payrolls/employees/{employee_id} returns the per-employee history. Read-only - payroll runs are not triggered through this API, only surfaced for reconciliation.

Get the most recent payroll run, then for each employee in it return employee_id, gross_pay, and net_pay as a CSV string

AI Agent HR Workflow via Jentic

An AI HR assistant fields a request like 'who's out next week?'. Through Jentic, the agent searches 'list time off requests', loads the GET /hris/time-off-requests operation, and executes it filtered by date range. Jentic stores the Apideck Authorization, x-apideck-app-id, and x-apideck-consumer-id headers separately so the agent never sees the raw key, even when the workflow spans multiple HRIS calls.

Through Jentic, search 'list time off requests', load GET /hris/time-off-requests, filter to the next 7 days, and return employee names with their leave dates

Key Endpoints

25 endpoints — the apideck hris api is a unified interface across hr information systems including bamboohr, gusto, workday, adp, and rippling.

METHOD

PATH

DESCRIPTION

GET

/hris/employees

List employees

POST

/hris/employees

Create an employee

PATCH

/hris/employees/{id}

Update an employee

GET

/hris/departments

List departments

GET

/hris/payrolls

List payroll runs

POST

/hris/time-off-requests

Create a time-off request

GET

/hris/time-off-requests

List time-off requests

GET

/hris/schedules/employees/{employee_id}

List an employee's schedule

GET

/hris/employees

List employees

POST

/hris/employees

Create an employee

PATCH

/hris/employees/{id}

Update an employee

GET

/hris/departments

List departments

GET

/hris/payrolls

List payroll runs

POST

/hris/time-off-requests

Create a time-off request

GET

/hris/time-off-requests

List time-off requests

GET

/hris/schedules/employees/{employee_id}

List an employee's schedule

Why Jentic?

What agents get from Jentic-routed access to this vendor.

Setup

Setup

Wiring the Apideck HRIS API by hand means setting up its API key plus consumer and service headers, learning the unified employee and time-off shapes, and normalising across HR platforms yourself. Through Jentic you install once, import Apideck HRIS from the API Directory, store the key once, and your agent calls it.

Permission scoping

Permission scoping

The Apideck HRIS API puts the employee id in the URL path (/hris/employees/{id}, /hris/schedules/employees/{employee_id}), so a rule can pin your agent to one employee: it can read and update that employee record and nothing else. You choose the operations it may call, so creating time-off requests is not included unless you add it.

Credential management

Credential isolation

Your Apideck API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.

Intent-based discovery

Intent-based discovery

Agents search Jentic by intent such as 'look up an employee' or 'list time-off requests', and Jentic returns the matching Apideck HRIS operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

Related APIs

Alternatives and complements available in the Jentic catalogue.

Alternative

BambooHR API

→

BambooHR-only HRIS API with deeper BambooHR-specific features but no abstraction over Gusto or Workday.

Choose BambooHR direct when the customer is BambooHR-only and needs vendor-specific objects like custom tables; choose Apideck HRIS for write-once cross-HRIS code.

Alternative

Gusto API

→

Gusto-only payroll and HRIS API with deeper payroll capabilities the unified API does not surface.

Choose Gusto direct when you need to actually run payroll (the unified API is read-only for payroll); choose Apideck HRIS for read-heavy multi-vendor workflows.

Complementary

Apideck Vault API

→

Vault sets up and stores the OAuth or API key connection the HRIS API executes against.

Use Vault first to authorise the customer's HRIS connection; then call HRIS endpoints scoped to the resulting consumer ID.

FAQs

Specific to using HRIS API through Jentic.

What authentication does the Apideck HRIS API use?

An apiKey scheme on the `Authorization` header containing your Apideck application key, plus `x-apideck-app-id` and `x-apideck-consumer-id` headers identifying the app and end user. Through Jentic these are stored encrypted in the vault and injected at execution time.

Can I trigger a payroll run with the HRIS API?

No. The payroll endpoints (GET /hris/payrolls and GET /hris/payrolls/employees/{employee_id}) are read-only - they expose payroll runs and line items for reconciliation but do not start a run. Trigger runs in the underlying HRIS UI or its native API.

What are the rate limits for the Apideck HRIS API?

The OpenAPI spec does not publish per-endpoint rate limits. Apideck applies plan-based limits at unify.apideck.com plus per-connector limits passed through from the underlying HRIS. See https://developers.apideck.com for your plan's quotas.

How do I create a time-off request through Jentic?

Install with `pip install jentic`, then run the search query 'create a time off request'. Jentic returns POST /hris/time-off-requests - load its schema, supply employee_id, start_date, end_date, and request type, then execute.

Which HRIS providers does this API support?

Apideck's HRIS Unified API normalises BambooHR, Gusto, Workday, ADP, Rippling, and other HRIS systems behind one set of 25 endpoints. The actual provider used is determined by the connection associated with the x-apideck-consumer-id; manage connections via the Vault API.

Can I update an existing employee's department or job title?

Yes. Use PATCH /hris/employees/{id} with the employee object's department, job_title, or related fields. The PATCH applies a partial update so unspecified fields are left unchanged. Confirm the change with a follow-up GET /hris/employees/{id}.

Can I limit what my agent is allowed to do with the Apideck HRIS API?

Yes. Because you run Jentic One yourself, your own rules decide which Apideck HRIS operations and credentials the agent may use, so you can allow read-only calls like GET /hris/employees while withholding writes such as POST /hris/time-off-requests. Since the employee id lives in the URL path (/hris/employees/{id}, /hris/schedules/employees/{employee_id}), a rule can pin the agent to a single employee record, letting it read or update that one employee and nothing else. Creating time-off requests or deleting employees is only in scope if you explicitly grant those operations.

GET STARTED

Start building with HRIS API

Explore with Jentic One
View OpenAPI Document