Clockify Client API
The Client API from Clockify — 2 operation(s) for client.
The Client API from Clockify — 2 operation(s) for client.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/clockify-client-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: '## Introduction
By using this REST API, you can easily integrate Clockify with your own add-ons, push and pull data
between Clockify and other tools, and create custom add-ons on CAKE.com Marketplace.'
title: Clockify Client API
version: v1
x-logo:
altText: Clockify logo
url: https://clockify.me/downloads/clockify_logo_primary_black_margin.png
tags:
- name: Client
x-displayName: Client
paths:
/v1/workspaces/{workspaceId}/clients:
servers:
- url: https://api.clockify.me/api
get:
operationId: getClients
parameters:
- description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
in: path
name: workspaceId
required: true
schema:
type: string
description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
- description: Filters client results that matches with the string provided in their client name.
example: Client X
in: query
name: name
required: false
schema:
type: string
description: Filters client results that matches with the string provided in their client name.
example: Client X
- description: Column name that will be used as criteria for sorting results.
example: NAME
in: query
name: sort-column
required: false
schema:
type: string
description: Column name that will be used as criteria for sorting results.
example: NAME
default: NAME
- description: Sorting mode
example: ASCENDING
in: query
name: sort-order
required: false
schema:
type: string
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
description: Page number.
format: int32
example: 1
default: 1
- description: Page size.
example: 50
in: query
name: page-size
required: false
schema:
minimum: 1
type: integer
description: Page size.
format: int32
example: 50
default: 50
- description: Filter whether to include archived clients or not.
example: false
in: query
name: archived
required: false
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ClientWithCurrencyDtoV1'
description: OK
summary: Find clients on a workspace
tags:
- Client
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
post:
operationId: createClient
parameters:
- description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
in: path
name: workspaceId
required: true
schema:
type: string
description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateClientRequestV1'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/ClientWithCurrencyDtoV1'
description: Created
summary: Add a new client
tags:
- Client
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
/v1/workspaces/{workspaceId}/clients/{id}:
servers:
- url: https://api.clockify.me/api
delete:
operationId: deleteClient
parameters:
- description: Represents a client identifier across the system.
example: 44a687e29ae1f428e7ebe305
in: path
name: id
required: true
schema:
type: string
description: Represents a client identifier across the system.
example: 44a687e29ae1f428e7ebe305
- description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
in: path
name: workspaceId
required: true
schema:
type: string
description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ClientDtoV1'
description: OK
summary: Delete a client
tags:
- Client
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
get:
operationId: getClient
parameters:
- description: Represents a client identifier across the system.
example: 44a687e29ae1f428e7ebe305
in: path
name: id
required: true
schema:
type: string
description: Represents a client identifier across the system.
example: 44a687e29ae1f428e7ebe305
- description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
in: path
name: workspaceId
required: true
schema:
type: string
description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ClientWithCurrencyDtoV1'
description: OK
summary: Get a client by ID
tags:
- Client
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
put:
operationId: updateClient
parameters:
- description: Represents a client identifier across the system.
example: 44a687e29ae1f428e7ebe305
in: path
name: id
required: true
schema:
type: string
description: Represents a client identifier across the system.
example: 44a687e29ae1f428e7ebe305
- description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
in: path
name: workspaceId
required: true
schema:
type: string
description: Represents a workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
- in: query
name: archive-projects
required: false
schema:
type: boolean
- in: query
name: mark-tasks-as-done
required: false
schema:
type: boolean
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateClientRequestV1'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ClientDtoV1'
description: OK
summary: Update a client
tags:
- Client
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
components:
schemas:
UpdateClientRequestV1:
type: object
properties:
address:
maxLength: 3000
minLength: 0
type: string
description: Represents a client's address.
example: Ground Floor, ABC Bldg., Palo Alto, California, USA 94020
archived:
type: boolean
description: Indicates if client will be archived or not.
default: false
ccEmails:
maxItems: 3
minItems: 0
type: array
items:
type: string
format: email
currencyId:
type: string
description: Represents a currency identifier across the system.
example: 53a687e29ae1f428e7ebe888
email:
type: string
format: email
description: Represents a client email.
example: clientx@example.com
name:
maxLength: 100
minLength: 0
type: string
description: Represents a client name.
example: Client X
note:
maxLength: 3000
minLength: 0
type: string
description: Represents additional notes for the client.
example: This is a sample note for the client.
CreateClientRequestV1:
type: object
properties:
address:
maxLength: 3000
minLength: 0
type: string
description: Represents a client's address.
example: Ground Floor, ABC Bldg., Palo Alto, California, USA 94020
email:
type: string
format: email
description: Represents a client email.
example: clientx@example.com
name:
maxLength: 100
minLength: 0
type: string
description: Represents a client name.
example: Client X
note:
maxLength: 3000
minLength: 0
type: string
description: Represents additional notes for the client.
example: This is a sample note for the client.
ClientDtoV1:
type: object
properties:
address:
type: string
description: Represents client's address.
example: Ground Floor, ABC Bldg., Palo Alto, California, USA 94020
archived:
type: boolean
description: Represents whether a client is archived or not.
default: false
ccEmails:
type: array
description: Represents additional emails for sending invoices.
example: clientx@example.com
items:
type: string
description: Represents additional emails for sending invoices.
example: clientx@example.com
currencyId:
type: string
description: Represents currency identifier across the system.
example: 33t687e29ae1f428e7ebe505
email:
type: string
description: Represents client email.
example: clientx@example.com
id:
type: string
description: Represents client identifier across the system.
example: 44a687e29ae1f428e7ebe305
name:
type: string
description: Represents client name.
example: Client X
note:
type: string
description: Represents saved notes for the client.
example: This is a sample note for the client.
workspaceId:
type: string
description: Represents workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
ClientWithCurrencyDtoV1:
type: object
properties:
address:
type: string
description: Represents client's address.
example: Ground Floor, ABC Bldg., Palo Alto, California, USA 94020
archived:
type: boolean
description: Represents whether a client is archived or not.
default: false
ccEmails:
type: array
description: Represents additional emails for sending invoices.
example: clientx@example.com
items:
type: string
description: Represents additional emails for sending invoices.
example: clientx@example.com
currencyCode:
type: string
description: Represents client currency code.
example: USD
currencyId:
type: string
description: Represents currency identifier across the system.
example: 33t687e29ae1f428e7ebe505
email:
type: string
description: Represents client email.
example: clientx@example.com
id:
type: string
description: Represents client identifier across the system.
example: 44a687e29ae1f428e7ebe305
name:
type: string
description: Represents client name.
example: Client X
note:
type: string
description: Represents saved notes for the client.
example: This is a sample note for the client.
workspaceId:
type: string
description: Represents workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
securitySchemes:
AddonKeyAuth:
in: header
name: x-addon-token
type: apiKey
ApiKeyAuth:
in: header
name: x-api-key
type: apiKey
MarketplaceKeyAuth:
in: header
name: x-marketplace-token
type: apiKey
ReportAddonKeyAuth:
in: header
name: x-addon-token
type: apiKey
x-tagGroups:
- name: Clockify API
tags:
- User
- Workspace
- Webhooks
- Approval
- Client
- Custom fields
- Expense
- Holiday
- Invoice
- Project
- Task
- Scheduling
- Tag
- Time entry
- Balance
- Policy
- Time Off
- Group
- name: Clockify Reports API
tags:
- Shared Report
- Team Report
- Time Entry Report
- Expense Report
- name: Clockify Audit Log API
tags:
- Audit Log Report
- name: Deprecated API
tags:
- Template (Deprecated)
- Scheduling (Deprecated)
- Workspace (Deprecated)
- name: Experimental API
tags:
- Entity changes (Experimental)
- name: Guide
tags:
- 'Entity Changes: Use cases'