Resources · n8n integration

Clockify n8n integrationAutomate Clockify with n8n.

Tracked hours are only useful once something else reads them. The Clockify n8n integration exposes 25 operations across 7 resources, from clients and projects down to a single time entry, and a trigger that polls your workspace. Written for teams who bill by the hour.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the Clockify n8n integration actually cover?

The Clockify node talks to the Clockify REST API from inside a workflow. It creates, reads, updates and deletes clients, projects, tags, tasks and time entries, and it lists the users of a workspace. The Clockify Trigger starts a workflow on its own by polling, which means n8n asks the API at a set interval instead of waiting for a call from Clockify.

Three shapes of workflow cover most of what teams build on it. The first one is billing prep: timeEntry.get and project.getAll feed a monthly roll-up into Google Sheets, so the numbers a finance person reads are the numbers Clockify holds. The second one is project bootstrapping: a signed deal creates the client with client.create, then the project with project.create, then the task list with task.create, in the same run, with no one retyping a name.

The third one is a nudge loop. The trigger polls the workspace, the workflow checks what came back, and an alert lands in Slack when an entry has no project attached or when a description field is empty. Same pattern works with a digest sent through Gmail on Friday afternoon.

Where the node stops, HTTP Request takes over. The node covers 7 resources; any other Clockify endpoint is reachable with the HTTP Request node, reusing the same credential through its predefined authentication, so you never store the key twice. That is the honest answer for anything outside clients, projects, tags, tasks, time entries, users and workspaces.

Two limits are worth knowing before you build. List operations page through results only when Return All is on, otherwise you get a capped batch fixed by Limit, which bites on a workspace with a long project history. And the trigger runs on the schedule you set, so a workflow expected to answer faster than that interval is the wrong design here.

If n8n itself is the part you are unsure about, the n8n review covers what the tool does well and where it hurts, and the n8n training walks through building workflows like these end to end.

Connect

How do you connect Clockify to n8n?

  1. 01

    Grab your Clockify API key

    You need a Clockify account first. The key lives in your Clockify Profile Settings, and it is the only supported authentication method for both the Clockify node and the Clockify Trigger. Copy it once, keep the tab open until the credential test passes in n8n, then close it. The key carries the rights of the account it belongs to, so use an account that can see the workspace you plan to automate.

  2. 02

    Create the credential in n8n

    Open the Credentials menu in n8n, pick the Clockify credential type and paste the value into API Key. A credential is created once and reused everywhere: every Clockify node you add later, in any workflow, offers it in a dropdown. Both the action node and the trigger node accept the same one, so there is nothing to duplicate when you add the trigger afterwards.

  3. 03

    Point the node at a workspace

    Add the Clockify node, select the credential, then pick a resource and an operation. On the trigger side, Workspace Name or ID is required and comes from a dropdown loaded through your key, or from an expression if the workspace changes per run. Trigger is required too and sets what the node watches. Run the workflow once to confirm real data comes back.

Triggers

What starts a Clockify workflow?

Clockify Trigger is the node that starts a workflow each time Clockify receives a new submission. Pick the form, activate the workflow: n8n registers the webhook on your Clockify account.

What you see in n8n

Configuration notes

01Configure the Clockify TriggerThe Clockify Trigger listens to Clockify events and starts the workflow without any manual run. It has no event checklist to tick, because the catalog exposes no separate event values for this node: you choose a workspace and what the node watches, and that is the whole setup.

The Clockify Trigger listens to Clockify events and starts the workflow without any manual run. It has no event checklist to tick, because the catalog exposes no separate event values for this node: you choose a workspace and what the node watches, and that is the whole setup.

Key parameters

  • Workspace Name or ID: required, chosen from the list that your API key can see, or given as an expression such as {{ $json.workspaceId }} when one workflow serves several workspaces.
  • Trigger: required, picked from the list, and it sets what the node watches inside that workspace.
When to use it
whenever the workflow has to react to activity logged in Clockify rather than to a schedule of your own, for example a tagging rule applied to fresh entries.
02Set Poll Times and the workflow timezoneThis trigger works by polling. n8n calls the Clockify API at the interval you choose and emits one item per new element it finds, so nothing has to be registered on the Clockify side and no public URL is involved.

This trigger works by polling. n8n calls the Clockify API at the interval you choose and emits one item per new element it finds, so nothing has to be registered on the Clockify side and no public URL is involved.

Key parameters

  • Poll Times: the schedule n8n follows when it asks the API, down to every minute at most. The delay before a workflow starts equals that interval, so pick it against how fresh the data needs to be, not against how fast the API answers.
When to use it
a minute-level poll fits a Slack nudge on missing project names; an hourly poll is plenty for a timesheet digest, and it keeps the number of API calls low on a busy workspace.
Actions

What can the Clockify node do?

The Clockify node exposes 25 operations across 7 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.

Resources × operations matrix
ResourceCreateGetGet ManyUpdateDelete
Client✓✓✓✓✓
Project✓✓✓✓✓
Tag✓✓✓✓
Task✓✓✓✓✓
Time Entry✓✓✓✓
User✓
Workspace✓

Client

5 operations
01

Create a client

client.create

What you see in n8n

Notes & use cases

Adds a client to the workspace and hands back its record, including the ID you reuse to attach projects to that client later in the run.

Key parameters

  • Client Name: the name of the client being created, usually mapped from an upstream node with {{ $json.company }} rather than typed in.
Use cases
a deal is marked as won in your CRM and the client exists in Clockify before anybody logs the first hour against it.
02

Delete a client

client.delete

What you see in n8n

Notes & use cases

Removes a client from the workspace. There is no undo on the n8n side, so a filter or an approval step in front of it is a reasonable habit.

Key parameters

  • Client ID: the client to remove. The node does not flag it as required, but with an empty value there is nothing to target, so map it from the previous node, for example {{ $json.id }}.
Use cases
cleaning a workspace that collected test clients during a rollout, driven from a list you reviewed first.
03

Get a client

client.get

What you see in n8n

Notes & use cases

Reads one client and returns its record, which is how you check a name or confirm an ID before a later operation writes anything.

Key parameters

  • Client ID: the identifier of the client to read. Not flagged as required in the node, yet the operation needs it to know which client, so feed it from the item in hand.
Use cases
an invoice workflow resolves the client behind a project so the billing line carries the right name.
04

Get many clients

client.getAll

What you see in n8n

Notes & use cases

Returns the clients of the workspace as one item per client, with filtering and sorting handled by the API rather than by a Code node downstream.

Key parameters

  • Return All: on, n8n pages through every client; off, it stops at Limit.
  • Archived: keeps or excludes archived clients, which matters on an old workspace.
  • Name: filters clients by name.
  • Sort Order: ASCENDING or DESCENDING.
Use cases
building the client dropdown of an internal form from live Clockify data.
05

Update a client

client.update

What you see in n8n

Notes & use cases

Edits a client that already exists, which is the operation to reach for when a company changes name or when an old client should stop appearing in pickers.

Key parameters

  • Name: required, and it is the value the client ends up with, so send the current name when you only mean to change something else.
  • Client ID: which client gets updated.
  • Address: the address of the client being updated.
  • Archived: archives the client instead of deleting it.
Use cases
a renamed account in the CRM propagates to Clockify the same night.

Project

5 operations
06

Create a project

project.create

What you see in n8n

Notes & use cases

Opens a project in the workspace so hours have somewhere to land, and returns the project record for the steps that follow.

Key parameters

  • Project Name: required, the name of the project being created.
  • Client Name or ID: attaches the project to a client, from the list or an expression.
  • Billable: marks the project as billable from the start.
  • Estimate: sets the estimated time.
  • Color, Is Public, Note: visual and access details, plus a note about the project.
Use cases
every signed statement of work becomes a project, spelled the same way each time.
07

Delete a project

project.delete

What you see in n8n

Notes & use cases

Takes a project out of the workspace. Because reporting is built on projects, this one deserves a confirmation step upstream rather than a raw connection from a list.

Key parameters

  • Project ID: required, and it is an identifier, not the project name shown in the interface. Read it from a previous Get many projects step with {{ $json.id }}.
Use cases
a demo workspace rebuilt from scratch at the end of a training session, project by project.
08

Get a project

project.get

What you see in n8n

Notes & use cases

Fetches a single project and returns what Clockify holds on it, which is how a workflow checks a project before writing hours or tasks against it.

Key parameters

  • Project ID: required. The dropdown elsewhere in the node shows names, this field wants the identifier, typically carried over from the trigger or from a list step.
Use cases
a time entry arrives with a project ID and the workflow pulls the project to decide which channel gets the alert.
09

Get many projects

project.getAll

What you see in n8n

Notes & use cases

Lists projects with the widest filter set of the node, 12 optional fields, so most of the sorting you would write by hand happens in the API call.

Key parameters

  • Return All and Limit: full pagination, or a capped batch.
  • Client Names or IDs, Contains Client, Client Status: narrow the list to the projects of given clients.
  • Archived, Billable, Is Template, Name: the usual state filters.
  • Sort Column (NAME, CLIENT_NAME, DURATION) and Sort Order.
Use cases
a weekly export of billable projects sorted by duration.
10

Update a project

project.update

What you see in n8n

Notes & use cases

Changes the settings of a live project without touching the hours already logged on it. Only the fields you add are sent, so a run can flip one flag and leave the rest alone.

Key parameters

  • Project ID: required, the project to edit.
  • Billable: switches a project from internal to billable when a contract is signed.
  • Estimate, Name, Note, Color, Is Public, Client Name or ID: the rest of the editable record.
Use cases
a project moved to another client after a contract transfer.

Tag

4 operations
11

Create a tag

tag.create

What you see in n8n

Notes & use cases

Adds a tag to the workspace so entries can be labelled by anything your projects do not already say, for instance a delivery phase or a funding line.

Key parameters

  • Name: required, the name of the tag being created. Keep the spelling generated by the workflow stable, since tags are matched by people in the Clockify interface afterwards.
Use cases
a new quarter starts and the workflow creates the tags the team will attach to their entries for the next three months.
12

Delete a tag

tag.delete

What you see in n8n

Notes & use cases

Drops a tag from the workspace. Useful when a labelling scheme is replaced and the old values keep showing up in the picker.

Key parameters

  • Tag ID: required, the identifier of the tag, which you normally get from a Get many tags step earlier in the same workflow rather than from a hardcoded value.
Use cases
retiring a set of campaign tags once the campaign is closed, after listing them and filtering on a prefix.
13

Get many tags

tag.getAll

What you see in n8n

Notes & use cases

Returns the tags of the workspace, which is the step that turns tag names into the IDs other operations expect.

Key parameters

  • Return All: on for the whole list, off to stop at Limit.
  • Name: filters on the tag name.
  • Archived: includes or leaves out archived tags.
  • Sort Column (NAME) and Sort Order (ASCENDING, DESCENDING).
Use cases
resolving the tag IDs needed to create a tagged time entry in the next node.
14

Update a tag

tag.update

What you see in n8n

Notes & use cases

Renames a tag or archives it, so a label can change wording without breaking the entries already carrying it.

Key parameters

  • Tag ID: required, the tag to edit.
  • Name: the new wording.
  • Archived: hides the tag from new entries while the historical ones keep it.
Use cases
a client tag follows a company rebrand, archived rather than deleted so past reports still make sense to whoever reads them.

Task

5 operations
15

Create a task

task.create

What you see in n8n

Notes & use cases

Puts a task inside a project, which is the level people actually pick when they start a timer.

Key parameters

  • Project Name or ID: required, from the list or an expression; a task cannot exist outside a project.
  • Task Name: required, the name of the task to create.
  • Assignee Names or IDs: who the task goes to.
  • Estimate: expected time in the 2:30 format, two hours and thirty minutes.
Use cases
a ticket opened in your tracker becomes a Clockify task on the matching project.
16

Delete a task

task.delete

What you see in n8n

Notes & use cases

Removes a task from its project. Both coordinates are needed, since a task ID is read inside the project it belongs to.

Key parameters

  • Project Name or ID: required, the project holding the task.
  • Task ID: required, the ID of the task to delete, not its label.
Use cases
a cancelled ticket in your tracker clears the matching task, so it stops appearing in the timer dropdown for the whole team.
17

Get a task

task.get

What you see in n8n

Notes & use cases

Looks up one task and returns its record, useful for reading an estimate or a status before deciding what the workflow does next.

Key parameters

  • Project Name or ID: required, the project the task sits in.
  • Task ID: required, the ID of the task to get.
Use cases
before posting a status update, the workflow reads the task to include its name and estimated time in the message body.
18

Get many tasks

task.getAll

What you see in n8n

Notes & use cases

Walks through the tasks of one project. The scope is the project, not the workspace, so a report across several projects loops over them.

Key parameters

  • Project Name or ID: required, the project to read.
  • Return All and Limit: every task, or a capped batch.
  • Is Active: keeps only the tasks still open.
  • Name: text to match in the task name.
  • Sort Column (NAME) and Sort Order.
Use cases
a Monday list of open tasks per project, posted to the team channel.
19

Update a task

task.update

What you see in n8n

Notes & use cases

Moves a task along: new owner, new estimate, or the switch to done once the work is delivered.

Key parameters

  • Project Name or ID and Task ID: both required to target the task.
  • Status: ACTIVE or DONE.
  • Assignee Names or IDs: reassigns the task.
  • Estimate: revised time in the 2:30 format.
  • Name: renames it.
Use cases
a merged pull request flips the matching Clockify task to DONE without anyone opening the app.

Time Entry

4 operations
20

Create a time entry

timeEntry.create

What you see in n8n

Notes & use cases

Writes an entry into Clockify from data that started somewhere else, which is how hours tracked in another tool end up in the same timesheet as everyone else's.

Key parameters

  • Start: required, a date and time; leaving it empty stops the node.
  • End: closes the entry, otherwise it stays running.
  • Project Name or ID, Task ID, Tag Names or IDs: where the hours are charged.
  • Description, Billable, Custom Fields: the rest of the entry.
Use cases
a finished support ticket logs its handling time automatically.
21

Delete a time entry

timeEntry.delete

What you see in n8n

Notes & use cases

Erases one entry from the timesheet. Hours are what invoices are built on, so this is the operation to guard with a check on who and what, before the run reaches it.

Key parameters

  • Time Entry ID: required, the entry to erase, normally carried by the item that triggered the workflow.
Use cases
a duplicate created by a failed retry gets removed the same day, before anyone exports the month.
22

Get a time entry

timeEntry.get

What you see in n8n

Notes & use cases

Reads a single entry. Two optional fields change the shape of what comes back, and they save a round of extra lookups.

Key parameters

  • Time Entry ID: required.
  • Hydrated: returns the project, task and tags in full instead of their IDs alone.
  • Consider Duration Format: rounds the duration to minutes or seconds, following the hh:mm or hh:mm:ss format set in the workspace.
Use cases
an approval message that names the project and tags in plain words, thanks to Hydrated.
23

Update a time entry

timeEntry.update

What you see in n8n

Notes & use cases

Corrects an entry after it was logged, the operation that absorbs the everyday mistakes: wrong project, missing tag, forgotten stop.

Key parameters

  • Time Entry ID: required.
  • Start and End: fix the boundaries of the entry.
  • Project Name or ID, Task ID, Tag Names or IDs: recharge the hours somewhere else.
  • Description, Billable, Custom Fields: the rest of the record.
Use cases
entries with an empty description get one built from the linked ticket title.

User

1 operation
24

Get many users

user.getAll

What you see in n8n

Notes & use cases

Lists the people of the workspace, which is how a workflow turns a name or an email into the user ID other steps need.

Key parameters

  • Return All and Limit: everyone, or a first batch.
  • Email and Name: filter on a string contained in either.
  • Status: ACTIVE, INACTIVE, PENDING or DECLINED, handy to spot invitations nobody accepted.
  • Sort Column (EMAIL, NAME, HOURLYRATE) and Sort Order.
Use cases
resolving assignees before a batch of tasks is created.

Workspace

1 operation
25

Get many workspaces

workspace.getAll

What you see in n8n

Notes & use cases

Clockify hangs everything on a workspace, so this operation returns the workspaces the API key can reach, each with its own ID. Every other operation and the Clockify Trigger ask for that ID before anything else.

Key parameters

  • Return All: on, n8n pages through the API and returns every workspace on the account; off, it stops at the number set in Limit.
  • Limit: the maximum number of workspaces returned, enough when you only need the first one to feed {{ $json.id }} into the next node.
Use cases
an agency running one workspace per client lists them once at the start of a run, then loops those IDs into its project and time entry steps.
Need help

Need help automating Clockify with n8n?

A person reads every message.

FAQ

Clockify and n8n, the questions that come up

01Is the Clockify n8n integration free?
Yes on the n8n side. The Clockify node and the Clockify Trigger ship with n8n, so there is nothing to install and nothing extra to pay for them, whether you run n8n Cloud or a self-hosted instance under the Community Edition and its Sustainable Use licence. A workflow behaves the same way in both cases, which means you can build it locally and move it later. What a Clockify plan costs on its own is a separate question, and this page does not answer it. You still need a Clockify account to get an API key.
02What credentials do you need to connect Clockify to n8n?
One API key. It is the only supported authentication method, and you find it in your Clockify Profile Settings after creating a Clockify account. In n8n you create the credential once from the Credentials menu, paste the value into the API Key field, and every Clockify node in every workflow offers it in its dropdown afterwards. The same credential serves both the action node and the trigger node, so adding the trigger later costs nothing extra. Since the key inherits the rights of its account, pick the account that can already see the workspace you want to automate.
03What are the limits of the Clockify node in n8n?
The node covers 25 operations over 7 resources: clients, projects, tags, tasks, time entries, users and workspaces. Anything outside that list is not in the node, and the answer is the HTTP Request node, which calls any other Clockify endpoint while reusing the same credential through predefined authentication. The second limit is pagination. List operations return a capped batch unless Return All is enabled, with Limit setting the maximum, so an export that looks short on a large workspace is usually that setting. Required fields also block execution when empty, which is a limit worth using as a guardrail.
04Does the Clockify Trigger react in real time?
No. It works by polling, meaning n8n asks the Clockify API at the interval you set in Poll Times and emits one item per new element found. Nothing is registered on the Clockify side, there is no webhook and no public URL to expose, but there is a delay equal to the interval you chose. The shortest interval is one call per minute. Pick it against the need: a minute for an alert on an entry logged without a project, an hour or more for a timesheet digest. Also check the workflow timezone setting, since the trigger uses it to decide the range of time entries starting time.
05n8n or Make for Clockify?
It depends on three things, and neither tool is bad at this. Hosting comes first: n8n runs on your own server through Docker or npm, or on n8n Cloud, while Make is hosted only. Data control follows from that, since a self-hosted instance keeps the time entries of your workspace inside your own infrastructure. Cost model is the third: Make bills per operation, which is a different arithmetic than running your own instance when a workflow loops over every project in a workspace. Visual logic matters too, and that one is down to preference, so try both on the same Clockify workflow before deciding.