HollyHR Developer Docs
  • HollyHR
  • Sign in
  • Manage API keys
  • Start Here
  • Core API
  • AI and MCP
  • API Reference
  • Integrations
  • Recipes
  • Resources
Slack and Microsoft TeamsZapierMake
Integrations

HollyHR for Zapier

The official HollyHR Zapier integration is currently in private qualification. It is not yet a public Zapier App Directory listing. This guide documents the connector contract so invited testers and reviewers can configure it safely before publication.

What v1 supports

OperationHollyHR scopePlan boundary
New Personpeople:read + webhooks:manageFree and Standard
New or Updated Personpeople:read + webhooks:manageFree and Standard
Person Endedpeople:read + webhooks:manageFree and Standard
New or Updated Time Offtime_off:read + webhooks:manageFree and Standard
Find Personpeople:readFree and Standard
Create Personpeople:writeStandard, with API writes approved
Create Time Offtime_off:writeStandard, with API writes approved

The read operations use HollyHR's safe public people and time-off projections. They do not expose personal contact details, home addresses, dates of birth, demographic fields, compensation, bank or tax identifiers, document bytes, time-off notes, or health-adjacent details.

Connect a workspace

  1. In HollyHR, open Settings → Integrations → Developer tools as a System Admin.
  2. Create a dedicated key for Zapier and grant only the scopes needed by the Zaps you intend to enable.
  3. In Zapier, enter the workspace part of your HollyHR URL. For https://acme.hollyhr.com, enter acme.
  4. Paste the API key once. Zapier checks GET /me, and HollyHR derives the organisation from that key. The connector never accepts an organisation ID as user input.

For create actions, also grant people:read, org_units:read, and reference:read if you want Zapier to populate the person, department, workplace, work-type, and time-off-category dropdowns.

Trigger timing and recovery

The four triggers use Zapier REST Hooks rather than polling. When a Zap is enabled, Zapier creates an exact, signed HollyHR event subscription. A committed matching change receives a best-effort immediate delivery attempt; a durable one-minute worker remains authoritative for recovery and bounded retries. Delivery is at least once, so use the event ID to make downstream steps idempotent.

Person Ended runs when an employment end date is set or changed. It does not wait until a future end date arrives.

Bulk imports record durable events without starting hundreds of request-lifetime callbacks. Keep downstream Zap actions idempotent because recovery can redeliver an event.

Safe create retries

Both create actions require a Source record key. Map a stable unique value from the Zap trigger, such as the source employee, form submission, or absence request ID. HollyHR hashes it into an idempotency key. If Zapier retries the same task, HollyHR replays the original response instead of creating a duplicate person, seat, or time-off record.

HollyHR still applies the connected key's exact write scope, Standard-plan entitlement, and write-approval state. The connector cannot bypass them.

Data handling

Zapier receives only fields returned by the selected trigger, search, or action. Any field mapped into a later Zap step is then processed under that destination app's and Zapier's data-handling terms. Review every mapping before enabling a Zap, particularly when employee names, work emails, leave dates, or status leave HollyHR.

Use fictional records for testing. Never paste API keys, employee records, or Zap task payloads into public support messages.

Revoke access

To stop one Zap, turn it off in Zapier. To stop all access for a connection, revoke its dedicated key in Settings → Integrations → Developer tools. Revocation takes effect on the next request; reconnecting requires a new key.

Troubleshooting

  • Authentication failed: confirm the workspace subdomain, make sure the key has not expired or been revoked, and create a new dedicated key if necessary.
  • Missing choices: add the relevant read scope (people:read, org_units:read, or reference:read) to a replacement key.
  • 403 on a create action: the workspace must be Standard, public API writes must be approved, and the key needs the matching write scope.
  • No trigger event yet: confirm the Zap is enabled, make a fresh matching change, and inspect the webhook endpoint health and delivery activity in HollyHR. Recovery may take longer than the immediate delivery attempt.
  • Duplicate protection replayed an older result: use a different source record key for a genuinely different source event.

If the problem continues, email support@hollyhr.com with the HollyHR request ID shown in the Zap error. Do not include the API key or employee data.

Last modified on August 21, 2026
Slack and Microsoft TeamsMake
On this page
  • What v1 supports
  • Connect a workspace
  • Trigger timing and recovery
  • Safe create retries
  • Data handling
  • Revoke access
  • Troubleshooting