Track time in Clockify: time entries, projects, clients, tags and reports; start, stop and log time.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
WRITE: add a client to a workspace. POST /v1/workspaces/{workspaceId}/clients.
Client name (unique in the workspace).
Note.
Client email.
Client address.
Workspace id (from clockify_list_workspaces). Default: your active workspace.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
WRITE: add a client to a workspace. POST /v1/workspaces/{workspaceId}/clients.
| Argument | Type | Description |
|---|---|---|
| name* | string | Client name (unique in the workspace). |
| note | string | Note. |
| string | Client email. | |
| address | string | Client address. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Client name (unique in the workspace)."
},
"note": {
"type": "string",
"maxLength": 3000,
"description": "Note."
},
"email": {
"type": "string",
"format": "email",
"pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
"maxLength": 254,
"description": "Client email."
},
"address": {
"type": "string",
"maxLength": 3000,
"description": "Client address."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}WRITE: create a project in a workspace (needs an admin or project-manager role, depending on workspace settings). POST /v1/workspaces/{workspaceId}/projects.
| Argument | Type | Description |
|---|---|---|
| name* | string | Project name, 2-250 characters (unique per client). |
| note | string | Project note. |
| color | string | Color, #RRGGBB. |
| billable | boolean | Billable by default. |
| client_id | string | Client id (from clockify_list_clients). |
| is_public | boolean | Visible to the whole workspace. Default false: the project is private (visible to its members only). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 250,
"minLength": 2,
"description": "Project name, 2-250 characters (unique per client)."
},
"note": {
"type": "string",
"maxLength": 16384,
"description": "Project note."
},
"color": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$",
"description": "Color, #RRGGBB."
},
"billable": {
"type": "boolean",
"description": "Billable by default."
},
"client_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Client id (from clockify_list_clients)."
},
"is_public": {
"type": "boolean",
"description": "Visible to the whole workspace. Default false: the project is private (visible to its members only)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}WRITE: add a tag to a workspace. POST /v1/workspaces/{workspaceId}/tags.
| Argument | Type | Description |
|---|---|---|
| name* | string | Tag name (unique in the workspace). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 100,
"minLength": 1,
"description": "Tag name (unique in the workspace)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}WRITE: add a task to a project. POST /v1/workspaces/{workspaceId}/projects/{projectId}/tasks.
| Argument | Type | Description |
|---|---|---|
| name* | string | Task name. |
| estimate | string | Time estimate, ISO 8601 duration such as PT1H30M. |
| project_id* | string | Project id. |
| assignee_ids | array | User ids to assign. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"project_id",
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 1000,
"minLength": 1,
"description": "Task name."
},
"estimate": {
"type": "string",
"pattern": "^PT(?=\\d)(?:\\d{1,5}H)?(?:\\d{1,5}M)?(?:\\d{1,5}S)?$",
"description": "Time estimate, ISO 8601 duration such as PT1H30M."
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Project id."
},
"assignee_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"description": "User ids to assign."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}WRITE: add a time entry for yourself. With end = a finished entry (log time); without end = a running timer that starts at start (default now). A workspace with required custom fields may refuse it. POST /v1/workspaces/{workspaceId}/time-entries.
| Argument | Type | Description |
|---|---|---|
| end | string | End time. Omit to start a running timer. |
| type | string | REGULAR (default) or BREAK. |
| start | string | Start time, ISO 8601 with a timezone. Default: now. |
| tag_ids | array | Tag ids (from clockify_list_tags). |
| task_id | string | Task id on that project (from clockify_list_tasks). |
| billable | boolean | Billable. Default: the project's billable setting (read from the project), else not billable. |
| project_id | string | Project id (from clockify_list_projects). |
| description | string | What the time was spent on. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
WRITE (destructive): permanently delete one time entry. It cannot be undone. DELETE /v1/workspaces/{workspaceId}/time-entries/{id}.
| Argument | Type | Description |
|---|---|---|
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
| time_entry_id* | string | Time entry id to delete. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"time_entry_id"
],
"properties": {
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
},
"time_entry_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Time entry id to delete."
}
}
}Every time entry in a date range across the workspace (user, project, client, task, tags, description, start/end, duration in seconds, amount), with totals; newest first, paged. POST reports /v1/workspaces/{workspaceId}/reports/detailed.
| Argument | Type | Description |
|---|---|---|
| to* | string | Last day of the report, yyyy-mm-dd (inclusive). |
| from* | string | First day of the report, yyyy-mm-dd (inclusive). On Clockify's FREE plan a report spans at most 31 days. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| tag_ids | array | Only these tags (ids). |
| billable | boolean | true = only billable time, false = only non-billable. Default: both. |
| user_ids | array | Only these users (ids). |
| page_size | integer | Results per page, 1-200 (default 50). |
| time_zone | string | IANA time zone the dates are read in, e.g. Europe/Berlin. Default: your Clockify profile's time zone. |
The Clockify user this API key belongs to: id, name, email, status, active and default workspace ids, and profile settings (time zone, week start, date/time format). GET /v1/user.
No arguments.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}One project by id: name, client, billable, color, note, estimate, duration tracked, rates and memberships. GET /v1/workspaces/{workspaceId}/projects/{projectId}.
| Argument | Type | Description |
|---|---|---|
| hydrated | boolean | true = include more detail (custom fields, estimates). |
| project_id* | string | Project id (from clockify_list_projects). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"project_id"
],
"properties": {
"hydrated": {
"type": "boolean",
"description": "true = include more detail (custom fields, estimates)."
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Project id (from clockify_list_projects)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}The timer that is running right now for a user (default: you), or running: false. GET /v1/workspaces/{workspaceId}/user/{userId}/time-entries?in-progress=true.
| Argument | Type | Description |
|---|---|---|
| user_id | string | User id. Default: you. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"user_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "User id. Default: you."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}One time entry by id: description, project, task, tags, billable, rates, custom fields and timeInterval. GET /v1/workspaces/{workspaceId}/time-entries/{id}.
| Argument | Type | Description |
|---|---|---|
| hydrated | boolean | true = embed the project, task and tag objects. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
| time_entry_id* | string | Time entry id (from clockify_list_time_entries). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"time_entry_id"
],
"properties": {
"hydrated": {
"type": "boolean",
"description": "true = embed the project, task and tag objects."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
},
"time_entry_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Time entry id (from clockify_list_time_entries)."
}
}
}List the clients of a workspace (id, name, email, address, currency, archived). GET /v1/workspaces/{workspaceId}/clients.
| Argument | Type | Description |
|---|---|---|
| name | string | Only clients whose name contains this text. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| archived | boolean | true = only archived clients, false = only active ones. Default: both. |
| page_size | integer | Results per page, 1-200 (default 50). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only clients whose name contains this text."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"archived": {
"type": "boolean",
"description": "true = only archived clients, false = only active ones. Default: both."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}List the projects of a workspace: id, name, client, billable, public, color, archived, duration tracked, estimate and rates. Filter by name, client, user, billable or archived. GET /v1/workspaces/{workspaceId}/projects.
| Argument | Type | Description |
|---|---|---|
| name | string | Only projects whose name contains this text. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| archived | boolean | true = only archived projects. Default: archived and active. |
| billable | boolean | true = only billable projects. Default: all. |
| hydrated | boolean | true = include more detail (custom fields, memberships, estimates). |
| user_ids | array | Only these users (projects these users are members of) (ids). |
| page_size | integer | Results per page, 1-200 (default 50). |
| client_ids | array | Only these clients (ids). |
| workspace_id |
List the tags of a workspace (id, name, archived). GET /v1/workspaces/{workspaceId}/tags.
| Argument | Type | Description |
|---|---|---|
| name | string | Only tags whose name contains this text. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| archived | boolean | true = only archived tags, false = only active ones. Default: both. |
| page_size | integer | Results per page, 1-200 (default 50). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only tags whose name contains this text."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"archived": {
"type": "boolean",
"description": "true = only archived tags, false = only active ones. Default: both."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}List the tasks of a project (id, name, status, assignees, estimate, duration tracked). GET /v1/workspaces/{workspaceId}/projects/{projectId}/tasks.
| Argument | Type | Description |
|---|---|---|
| name | string | Only tasks whose name contains this text. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| is_active | boolean | true = only active tasks, false = only done tasks. Default: both. |
| page_size | integer | Results per page, 1-200 (default 50). |
| project_id* | string | Project id (from clockify_list_projects). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"project_id"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only tasks whose name contains this text."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"is_active": {
"type": "boolean",
"description": "true = only active tasks, false = only done tasks. Default: both."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Project id (from clockify_list_projects)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}List the time entries of one user (default: you), newest first: id, description, project, task, tags, billable and timeInterval (start, end, ISO 8601 duration). Filter by time range, project, task, tags or description. For totals across users use clockify_summary_report. GET /v1/workspaces/{workspaceId}/user/{userId}/time-entries.
| Argument | Type | Description |
|---|---|---|
| end | string | Only entries starting before this time (ISO 8601 with a timezone). |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| start | string | Only entries starting at or after this time (ISO 8601 with a timezone). |
| tag_ids | array | Only these tags (ids). |
| task_id | string | Only entries on this task. |
| user_id | string | User id (from clockify_list_users). Default: you. Other users' entries need an admin or manager role. |
| hydrated | boolean | true = embed the project, task and tag objects instead of ids only. |
| page_size | integer |
List the members of a workspace: id, name, email, status and settings. Filter by name, email, status or project access. GET /v1/workspaces/{workspaceId}/users.
| Argument | Type | Description |
|---|---|---|
| name | string | Only users whose name contains this text. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| string | Only users whose email contains this text. | |
| status | string | Membership status filter. |
| page_size | integer | Results per page, 1-200 (default 50). |
| project_id | string | Only users with access to this project. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only users whose name contains this text."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"email": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only users whose email contains this text."
},
"status": {
"enum": [
"PENDING",
"ACTIVE",
"DECLINED",
"INACTIVE",
"ALL"
],
"type": "string",
"description": "Membership status filter."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Only users with access to this project."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}List the Clockify workspaces you belong to: id, name, plan (featureSubscriptionType), subdomain, currencies and default hourly/cost rate. Use the id as workspace_id in other tools. GET /v1/workspaces.
| Argument | Type | Description |
|---|---|---|
| roles | array | Only workspaces where you have one of these roles. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"roles": {
"type": "array",
"items": {
"enum": [
"WORKSPACE_ADMIN",
"OWNER",
"TEAM_MANAGER",
"PROJECT_MANAGER"
],
"type": "string"
},
"maxItems": 4,
"minItems": 1,
"description": "Only workspaces where you have one of these roles."
}
}
}WRITE: stop the running timer of a user (default: you) at end (default now). Clockify answers 404 if no timer is running. PATCH /v1/workspaces/{workspaceId}/user/{userId}/time-entries.
| Argument | Type | Description |
|---|---|---|
| end | string | Stop time, ISO 8601 with a timezone. Default: now. |
| user_id | string | User id. Default: you. Stopping someone else's timer needs an admin role. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"end": {
"type": "string",
"description": "Stop time, ISO 8601 with a timezone. Default: now."
},
"user_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "User id. Default: you. Stopping someone else's timer needs an admin role."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}Totals of tracked time (seconds) and amounts for a date range across the workspace, grouped by up to 3 levels (default project → time entry), e.g. hours per user per project last month. Respects the filters. POST reports /v1/workspaces/{workspaceId}/reports/summary.
| Argument | Type | Description |
|---|---|---|
| to* | string | Last day of the report, yyyy-mm-dd (inclusive). |
| from* | string | First day of the report, yyyy-mm-dd (inclusive). On Clockify's FREE plan a report spans at most 31 days. |
| tag_ids | array | Only these tags (ids). |
| billable | boolean | true = only billable time, false = only non-billable. Default: both. |
| group_by | array | Grouping levels, outermost first (default [PROJECT, TIMEENTRY]). |
| user_ids | array | Only these users (ids). |
| time_zone | string | IANA time zone the dates are read in, e.g. Europe/Berlin. Default: your Clockify profile's time zone. |
| client_ids | array |
WRITE: change a time entry's start, end, description, project, task, tags or billable. Only the fields you pass change: the entry is read first and every other field (custom fields included) is sent back as it was. The entry is rewritten (PUT) from a fresh read, so an edit made to the same entry in between (e.g. in the Clockify app) can be lost. A new project without task_id clears the task. GET then PUT /v1/workspaces/{workspaceId}/time-entries/{id}.
| Argument | Type | Description |
|---|---|---|
| end | string | New end time (also stops a running timer). |
| start | string | New start time. |
| tag_ids | array | New tag ids (replaces the tags; [] removes them all). |
| task_id | string | New task id (on the entry's project). |
| billable | boolean | New billable flag. |
| project_id | string | New project id. |
| description | string | New description. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"end": {
"type": "string",
"description": "End time. Omit to start a running timer."
},
"type": {
"enum": [
"REGULAR",
"BREAK"
],
"type": "string",
"description": "REGULAR (default) or BREAK."
},
"start": {
"type": "string",
"description": "Start time, ISO 8601 with a timezone. Default: now."
},
"tag_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"description": "Tag ids (from clockify_list_tags)."
},
"task_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Task id on that project (from clockify_list_tasks)."
},
"billable": {
"type": "boolean",
"description": "Billable. Default: the project's billable setting (read from the project), else not billable."
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Project id (from clockify_list_projects)."
},
"description": {
"type": "string",
"maxLength": 3000,
"description": "What the time was spent on."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}| client_ids | array | Only these clients (ids). |
| description | string | Only entries whose description contains this text. |
| project_ids | array | Only these projects (ids). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
"description": "Last day of the report, yyyy-mm-dd (inclusive)."
},
"from": {
"type": "string",
"pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
"description": "First day of the report, yyyy-mm-dd (inclusive). On Clockify's FREE plan a report spans at most 31 days."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"tag_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these tags (ids)."
},
"billable": {
"type": "boolean",
"description": "true = only billable time, false = only non-billable. Default: both."
},
"user_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these users (ids)."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"time_zone": {
"type": "string",
"pattern": "^[A-Za-z]+(?:[/_+-][A-Za-z0-9_+-]+){0,3}$",
"maxLength": 64,
"description": "IANA time zone the dates are read in, e.g. Europe/Berlin. Default: your Clockify profile's time zone."
},
"client_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these clients (ids)."
},
"description": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only entries whose description contains this text."
},
"project_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these projects (ids)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}| string |
| Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only projects whose name contains this text."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"archived": {
"type": "boolean",
"description": "true = only archived projects. Default: archived and active."
},
"billable": {
"type": "boolean",
"description": "true = only billable projects. Default: all."
},
"hydrated": {
"type": "boolean",
"description": "true = include more detail (custom fields, memberships, estimates)."
},
"user_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these users (projects these users are members of) (ids)."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"client_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these clients (ids)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}| Results per page, 1-200 (default 50). |
| project_id | string | Only entries on this project. |
| description | string | Only entries whose description contains this text. |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"end": {
"type": "string",
"description": "Only entries starting before this time (ISO 8601 with a timezone)."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"start": {
"type": "string",
"description": "Only entries starting at or after this time (ISO 8601 with a timezone)."
},
"tag_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these tags (ids)."
},
"task_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Only entries on this task."
},
"user_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "User id (from clockify_list_users). Default: you. Other users' entries need an admin or manager role."
},
"hydrated": {
"type": "boolean",
"description": "true = embed the project, task and tag objects instead of ids only."
},
"page_size": {
"type": "integer",
"maximum": 200,
"description": "Results per page, 1-200 (default 50).",
"exclusiveMinimum": 0
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Only entries on this project."
},
"description": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only entries whose description contains this text."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}| Only these clients (ids). |
| description | string | Only entries whose description contains this text. |
| project_ids | array | Only these projects (ids). |
| workspace_id | string | Workspace id (from clockify_list_workspaces). Default: your active workspace. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"from",
"to"
],
"properties": {
"to": {
"type": "string",
"pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
"description": "Last day of the report, yyyy-mm-dd (inclusive)."
},
"from": {
"type": "string",
"pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
"description": "First day of the report, yyyy-mm-dd (inclusive). On Clockify's FREE plan a report spans at most 31 days."
},
"tag_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these tags (ids)."
},
"billable": {
"type": "boolean",
"description": "true = only billable time, false = only non-billable. Default: both."
},
"group_by": {
"type": "array",
"items": {
"enum": [
"PROJECT",
"CLIENT",
"TASK",
"TAG",
"USER",
"USER_GROUP",
"DATE",
"WEEK",
"MONTH",
"TIMEENTRY"
],
"type": "string"
},
"maxItems": 3,
"minItems": 1,
"description": "Grouping levels, outermost first (default [PROJECT, TIMEENTRY])."
},
"user_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these users (ids)."
},
"time_zone": {
"type": "string",
"pattern": "^[A-Za-z]+(?:[/_+-][A-Za-z0-9_+-]+){0,3}$",
"maxLength": 64,
"description": "IANA time zone the dates are read in, e.g. Europe/Berlin. Default: your Clockify profile's time zone."
},
"client_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these clients (ids)."
},
"description": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "Only entries whose description contains this text."
},
"project_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"minItems": 1,
"description": "Only these projects (ids)."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
}
}
}| time_entry_id* | string | Time entry id. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"time_entry_id"
],
"properties": {
"end": {
"type": "string",
"description": "New end time (also stops a running timer)."
},
"start": {
"type": "string",
"description": "New start time."
},
"tag_ids": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"maxItems": 100,
"description": "New tag ids (replaces the tags; [] removes them all)."
},
"task_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "New task id (on the entry's project)."
},
"billable": {
"type": "boolean",
"description": "New billable flag."
},
"project_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "New project id."
},
"description": {
"type": "string",
"maxLength": 3000,
"description": "New description."
},
"workspace_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Workspace id (from clockify_list_workspaces). Default: your active workspace."
},
"time_entry_id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$",
"description": "Time entry id."
}
}
}