Clockify Tag API
The Tag API from Clockify — 2 operation(s) for tag.
The Tag API from Clockify — 2 operation(s) for tag.
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:clockify-tag-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 Tag API
version: v1
x-logo:
altText: Clockify logo
url: https://clockify.me/downloads/clockify_logo_primary_black_margin.png
tags:
- name: Tag
x-displayName: Tag
paths:
/v1/workspaces/{workspaceId}/tags:
servers:
- url: https://api.clockify.me/api
get:
operationId: getTags
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: If provided, you'll get a filtered list of tags that matches the provided string in their name.
example: feature_X
in: query
name: name
required: false
schema:
type: string
description: If provided, you'll get a filtered list of tags that matches the provided string in their name.
example: feature_X
- description: Flag to toggle on/off strict search mode. When set to true, search by name will only return tags whose name exactly matches the string value given for the 'name' parameter. When set to false, results will also include tags whose name contain the string value, but could be longer than the string value itself. For example, if there is a tag with the name 'applications', and the search value is 'app', setting strict-name-search to true will not return that tag in the results, whereas setting it to false will.
in: query
name: strict-name-search
required: false
schema:
type: boolean
description: Flag to toggle on/off strict search mode. When set to true, search by name will only return tags whose name exactly matches the string value given for the 'name' parameter. When set to false, results will also include tags whose name contain the string value, but could be longer than the string value itself. For example, if there is a tag with the name 'applications', and the search value is 'app', setting strict-name-search to true will not return that tag in the results, whereas setting it to false will.
default: false
- description: Represents a list of excluded ids
example:
- 90p687e29ae1f428e7ebe657
- 3r8687e29ae1f428e7eg567y
in: query
name: excluded-ids
required: false
schema:
type: string
- description: Represents a column to be used as sorting criteria.
example: NAME
in: query
name: sort-column
required: false
schema:
type: string
enum:
- ID
- NAME
- description: Represents a sorting mode.
example: ASCENDING
in: query
name: sort-order
required: false
schema:
type: string
enum:
- ASCENDING
- DESCENDING
- 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: Filters the result whether tags are archived or not.
example: false
in: query
name: archived
required: false
schema:
type: boolean
description: Filters the result whether tags are archived or not.
example: false
default: false
responses:
'200':
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/TagDtoV1'
description: OK
summary: Find tags on a workspace
tags:
- Tag
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
post:
operationId: createNewTag
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/TagRequest'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/TagDtoV1'
description: Created
summary: Add a new tag
tags:
- Tag
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
/v1/workspaces/{workspaceId}/tags/{id}:
servers:
- url: https://api.clockify.me/api
delete:
operationId: deleteTag
parameters:
- description: Represents a tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
in: path
name: id
required: true
schema:
type: string
description: Represents a tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
- 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/TagDtoV1'
description: OK
summary: Delete a tag
tags:
- Tag
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
get:
operationId: getTag
parameters:
- description: Represents a tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
in: path
name: id
required: true
schema:
type: string
description: Represents a tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
- 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/TagDtoV1'
description: OK
summary: Get a tag by ID
tags:
- Tag
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
put:
operationId: updateTag
parameters:
- description: Represents a tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
in: path
name: id
required: true
schema:
type: string
description: Represents a tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
- 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/UpdateTagRequest'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/TagDtoV1'
description: OK
summary: Update a tag
tags:
- Tag
security:
- ApiKeyAuth: []
- AddonKeyAuth: []
components:
schemas:
TagDtoV1:
type: object
properties:
archived:
type: boolean
description: Indicates whether a tag is archived or not.
default: false
id:
type: string
description: Represents tag identifier across the system.
example: 21s687e29ae1f428e7ebe404
name:
type: string
description: Represents tag name.
example: Sprint1
workspaceId:
type: string
description: Represents workspace identifier across the system.
example: 64a687e29ae1f428e7ebe303
TagRequest:
type: object
properties:
name:
maxLength: 100
minLength: 0
type: string
description: Represents a tag name.
example: Sprint1
UpdateTagRequest:
type: object
properties:
archived:
type: boolean
description: Indicates whether a tag will be archived or not.
default: false
name:
maxLength: 100
minLength: 0
type: string
description: Represents a tag name.
example: Sprint1
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'