Connect

LeaveCalc with Make

Send approved time off to a Google Sheet or to Slack, or add a new hire to LeaveCalc from a form. Make has its own Webhooks and HTTP modules, so you do not need a special LeaveCalc app.

On this page

Before you start

  • To receive from LeaveCalc you use Webhooks, Custom webhook as the first module of a scenario. To send to LeaveCalc you use HTTP, Make a request (Make Webhooks and Make HTTP, fetched 2026-10-02).
  • To send to LeaveCalc you need a token that can read and change: Settings, Integrations, API tokens, Create token. Copy it when it is shown: it is shown once.
  • Make accepts messages up to 5 MB and answers within seconds; ours are a few KB. Make keeps a history of what it received, which helps when you test.
  • A LeaveCalc app inside Make is not published. These recipes work today with the modules Make already has.

Recipe 1: approved time off to a Google Sheet row

  1. In Make create a scenario. Add Webhooks, Custom webhook, choose Add, give it a name, and copy the address Make shows.
  2. In LeaveCalc add a webhook with that address and tick A request is approved. Choose Send test.
  3. In Make choose Run once on the scenario, then approve a real request in LeaveCalc. Make learns the fields from that message. (If you ran it on the test message first, choose the option that detects the data structure again and send a real one.) You now see kind, data, request, employee_name, start_date, end_date and days.
  4. Add Google Sheets, Add a Row. Choose the spreadsheet and sheet, and fill the columns from those fields.
  5. Turn the scenario on and set how often it checks (instant webhooks run as soon as a message arrives).

Recipe 2: approved time off to a Slack message

  1. Do steps 1 to 3 of recipe 1.
  2. Add Slack, Create a Message. Choose the channel.
  3. Write the text with the fields from the webhook: employee name, start date, end date and leave type.
  4. Turn the scenario on.
If the webhook sends everything, put a filter between the two modules: continue only if kind equals request.approved.

Recipe 3: a new hire from a form to LeaveCalc

  1. The first module is your form, for example Google Forms, Watch Responses. Run it once so Make has a sample answer.
  2. Add HTTP, Make a request.
  3. URL https://leavecalc.com/api/v1/ext/employees, method POST.
  4. Headers: add Authorization with the value Bearer lc_... (your token). Body type: Raw, content type JSON (application/json).
  5. Request content, with the fields of the form module in the placeholders:
    Request content
    {
      "name": "{{1.name}}",
      "email": "{{1.email}}",
      "start_date": "{{1.start_date}}",
      "department": "{{1.department}}"
    }
  6. Set Parse response to yes, run the module once, and check that the answer has an id. Turn the scenario on.

If someone with that email is already on the team, LeaveCalc answers 409 email_exists and does not add them twice. If your plan is full the answer is 402 seat_limit.

What LeaveCalc answers
HTTP 201 Created
{
  "id": 3,
  "name": "Priya Shah",
  "email": "priya.shah@example.com",
  "department": "Clinic",
  "location_id": null,
  "location": null,
  "start_date": "2026-10-19",
  "end_date": null,
  "hours_per_week": 24.0,
  "working_days": [
    "mon",
    "tue",
    "wed"
  ],
  "status": "active",
  "created_at": "2026-10-05T14:03:11Z",
  "updated_at": "2026-10-05T14:03:11Z"
}

If something does not work

  • In LeaveCalc open the Log of the webhook. It shows each message, whether Make answered, and Send again.
  • Check the address: it is the one of this Custom webhook. A scenario that is off does not receive.
  • If you want to check the signature, Make has a sha256 function that takes a key, and a way to pass the body as text. It is optional: the address Make gives you is secret and unique to your webhook.
  • A 401 from the API means the token is wrong or was removed. A 403 means it can only read.

Also: API reference · Zapier · AI assistants (MCP) · SAML single sign-on