Clockodo API:
Manage entries

Endpoint api/v2/entries

Object type "entry"

Basic information

included in all entry types

Parameter Type Description
idinteger
ID of the entry
customers_idinteger
ID of the corresponding customer
projects_idinteger|null
ID of the corresponding project
users_idinteger
ID of the corresponding co-worker
billableinteger
Is the entry billable?
0: not billable, 1: billable, 2: already billed
texts_idinteger|null
ID of the description text
time_sincestring
Starting time
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
time_untilstring|null
End time, NULL if entry is running
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
time_insertstring
Insert time
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
time_last_changestring
Time at which the entry has been changed the last time
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
[customers_name]string
Name of the corr. customers
Only in list function with enhanced list mode enabled
[projects_name]string|null
Name of the corr. project
Only in list function with enhanced list mode enabled
[users_name]string
Name of the corr. co-worker
Only in list function with enhanced list mode enabled
[text]string|null
description text
Only in list function with enhanced list mode enabled
[revenue]float
Revenue of the entry
Only with necessary access rights and only in list function with enhanced list mode enabled
typeinteger
Type of the entry
1: time entry, 2: lump sum value, 3: entry with lump sum service

Type 1: time entry

other parameters in addition to the basic information:

Parameter Type Description
services_idinteger
ID of the corresponding service
durationinteger
Duration of the entry in seconds
offsetinteger
The time correction of the entry in seconds. Is set if the duration differs from the period between start and end.
clockedboolean
Entry was stopped with the clock
clocked_offlineboolean
Entry was clocked offline
time_clocked_sincestring|null
Time at which the clock was started
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
time_last_change_worktimestring
Time at which worktime relevant details were changed the last time
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
hourly_ratefloat
Hourly rate
Only with necessary access rights
[services_name]string
Name of the corr. service
Only in list function with enhanced list mode enabled

Type 2: lump sum value

other parameters in addition to the basic information:

Parameter Type Description
services_idinteger
ID of the corresponding service
lumpsumfloat
Value of the lump sum entry
[services_name]string
Name of the corr. service
Only in list function with enhanced list mode enabled

Type 3: Entry with lump sum service

other parameters in addition to the basic information:

Parameter Type Description
lumpsum_services_idinteger
ID of the corresponding lumpsum service
lumpsum_services_amountfloat
amount of the lump sum service
lumpsum_services_pricefloat
Price per unit
Only in list function with enhanced list mode enabled

List entries

Request
GET /api/v2/entries
Required parameters time_since
string
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
time_until
string
in format ISO 8601 UTC, e.g. "2021-06-30T12:34:56Z"
Optional parameters filter[users_id]
integer
filter[customers_id]
integer
filter[projects_id]
integer
filter[services_id]
integer
filter[lumpsum_services_id]
integer
filter[billable]
integer
0, 1 or 2
With the request filter[billable]=2 you only receive entries which are billable and already billed
filter[text] / filter[texts_id]
string / integer
filter[budget_type]
string
strict, strict-completed, strict-incomplete, soft, soft-completed, soft-incomplete, without, without-strict
calc_also_revenues_for_projects_with_hard_budget
boolean
By default, revenues for projects with hard budgets will no be calculated. If you activate this option, the sum of all revenues to this project can be more than the project budget

Only für enhanced_list=1
enhanced_list
boolean
Enables the output of additional information

Please note that listing entries requires the restriction to a time period with the parameters above. Additionally, you can filter the entries by parameters.

Because the result can have many entries, the use of page-by-page output is enabled for this request.

Example curl request
curl -v 
  -X GET \ 
  -H 'X-ClockodoApiUser: [email adress]' \ 
  -H 'X-ClockodoApiKey: [API key]' \ 
  -H 'X-Clockodo-External-Application: [name of application];[email address]' \ 
  "https://my.clockodo.com/api/v2/entries?time_since=2021-01-01T00:00:00Z&time_until=2021-02-01T00:00:00Z"
Response
{
  "paging": [paging information],
  "filter": [list of respected filters],
  "entries": 
  {
    [object of type entry],
    [object of type entry],
    ...
  }
}

Please refer to the description of the page-by-page-output.

Get entry

Request
GET /api/v2/entries/[ID]
Response
{
  "entry": [object of type entry]
}

Add entry

Request
POST /api/v2/entries

Type 1: Time entry

Required parameters customers_id, services_id, billable, time_since, time_until
Optional parameters users_id, duration, hourly_rate, projects_id, text

Type 2: Lump sum value

Required parameters customers_id, services_id, lumpsum, billable, time_since
Optional parameters users_id, projects_id, text

Type 3: Entry with lump sum service

Required parameters customers_id, lumpsum_services_id, lumpsum_services_amount, billable, time_since
Optional parameters users_id, projects_id, text
Response
{
  "entry": [object of type entry]
}

Edit entry

Request
PUT /api/v2/entries/[ID]
Required parameters keine
Optional parameters customers_id, projects_id, services_id, lumpsum_services_id, users_id, billable, text, duration, lumpsum, lumpsum_services_amount, hourly_rate, time_since, time_until
Response
{
  "entry": [object of type entry]
}

Delete entry

Request
DELETE /api/v2/entries/[ID]
Response
{
  "success": true
}
stripes illustration
Contact us!

Our Customer-Success-Team will answer your questions.

Contact now!
Test all functions 14 days free of charge
By submitting this form you accept our terms and conditions and our privacy policy and you confirm that you will use Clockodo as a commercial user.

Take advantage of the experience of 10,000 other companies:

Bechtle Mannheim LogoBechtlePeerigon LogoPeerigon GmbH
Phoenix Logistik LogoPhoenix LogistikFieda LogoFidea