KalHR logo

Access & approvals

API keys and webhooks

Let your organisation's other systems connect to KalHR. Create API keys, add webhook endpoints, and control who can do either.

Your developers, or a supplier you work with, can connect other systems to KalHR: an accounting package that picks up each payroll, an identity system that creates accounts for new starters, a rota tool that knows who is on leave. They need two things from you:

  • An API key, so their system can read from KalHR.
  • A webhook endpoint, so KalHR can tell their system when something happens.

This page covers what you do in KalHR. Everything a developer needs (code samples, every endpoint and event) is in KalHR Developers.

Who can set them up

Four permissions control integrations. Administrators have them; give them to anyone else on their role in Users & roles.

PermissionLets a person
View API KeysSee the organisation's keys (never the keys themselves), what they can reach, and when they were last used
Manage API KeysCreate, change and revoke keys
View WebhooksSee webhook endpoints and their delivery log
Manage WebhooksAdd, change and remove endpoints, rotate their secrets, send test events and redeliver

Integrations are part of the Premium and Enterprise plans, and open to every organisation while the free usage policy lasts.

Create an API key

  1. Open Settings → API keys and select Create key.
  2. Name it after the system that will use it, such as Accounting system.
  3. Under Access, choose View for each module the system needs to read, and leave the rest at No Access. Ask the developer what they need; a system that reads leave doesn't need payroll.
  4. For a short project or a contractor, choose an Expires date.
  5. Select Create key, then send the key to the developer through a secure channel: a password manager's sharing feature, not email or chat. It is shown only once.

A key can never be given more access than you have yourself, and it can never pay salaries or loans, or manage users, roles, keys or webhooks.

The keys page shows when each key was last used. Changes made with a key appear in the audit log (More → Access Management → Audit log) under its name, such as API: Accounting system.

Revoke a key when the system no longer needs it, or straight away if it may have leaked. Anything using it is refused within a minute.

Add a webhook endpoint

The developer gives you a URL starting with https://.

  1. Open Settings → Webhooks and select Add endpoint.
  2. Paste the Endpoint URL and add a description.
  3. Choose Every event, or Selected events and tick the ones the developer asked for.
  4. Select Add endpoint, and send the signing secret to the developer the same secure way as a key. It is shown only once.
  5. Select Test on the endpoint. The Delivery log shows within seconds whether their system answered.

If an endpoint keeps failing, KalHR switches it off and emails your administrators. Once the developer has fixed their system, switch it back on and use Redeliver in the delivery log for anything that was missed.

Last updated October 19, 2026

Still need help?

Try it in the app, or talk to us and we'll walk you through it.

See KalHR in action - 30 min demo