Time entries are used to track time spent on projects, which can then be billed to customers.
Get a time entry by id
Returns a time entry in the administration.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
idstring | integer · pattern:^\d+$· requiredA unique record identifier
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
Responses
A time entry
idstring | integer · pattern:^\d+$A unique record identifier
administration_idstring | integer · pattern:^\d+$A unique record identifier of an administration
contact_idstring | integer | null · pattern:^\d+$A unique record identifier
project_idstring | integer | null · pattern:^\d+$A unique record identifier
sales_invoice_idstring | integer | null · pattern:^\d+$A unique record identifier
user_idstring | integer · pattern:^\d+$A unique record identifier
started_atstring · date-timeended_atdescriptionstringpaused_durationintegerbillableboolean | nullcreated_atstring · date-timeupdated_atstring · date-timecontactuserobjectprojectsales_invoiceeventsobject[]notesobject[]
Delete a time entry
Delete a time entry by id.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
idstring | integer · pattern:^\d+$· requiredA unique record identifier
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
Responses
Time entry deleted
Update a time entry
When updating a time entry, provide only the attributes you want to update. The other attributes will not be changed.
started_at and ended_at are rounded down to full minutes when updating a time entry, with a minimum of 1 minute between them.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
idstring | integer · pattern:^\d+$· requiredA unique record identifier
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
Responses
Time entry updated
idstring | integer · pattern:^\d+$A unique record identifier
administration_idstring | integer · pattern:^\d+$A unique record identifier of an administration
contact_idstring | integer | null · pattern:^\d+$A unique record identifier
project_idstring | integer | null · pattern:^\d+$A unique record identifier
sales_invoice_idstring | integer | null · pattern:^\d+$A unique record identifier
user_idstring | integer · pattern:^\d+$A unique record identifier
started_atstring · date-timeended_atdescriptionstringpaused_durationintegerbillableboolean | nullcreated_atstring · date-timeupdated_atstring · date-timecontactuserobjectprojectsales_invoiceeventsobject[]notesobject[]
Destroys note from entity
Deletes a note from a time entry.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
time_entry_idstring | integer · pattern:^\d+$· requiredA unique record identifier
idstring | integer · pattern:^\d+$· requiredA unique record identifier
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
Responses
Note deleted
Adds note to entity
Adds a note to the time entry.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
time_entry_idstring | integer · pattern:^\d+$· requiredA unique record identifier
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
Responses
Note created
idstring | integer · pattern:^\d+$A unique record identifier
administration_idstring | integer · pattern:^\d+$A unique record identifier of an administration
entity_idstring | integer | null · pattern:^\d+$A unique record identifier
entity_typestringuser_idstring | integer · pattern:^\d+$A unique record identifier
assignee_idstring | integer | null · pattern:^\d+$A unique record identifier
todoboolean | string | nullDefault: falsenotestring | nullcompleted_atstring | null · date-timecompleted_by_idstring | integer | null · pattern:^\d+$A unique record identifier
todo_typestring | null · enumEnum values:sales_invoice_duepurchase_invoice_duegeneral_document_remindergeneral_document_duenew_document_awaiting_processingnew_financial_mutation_awaiting_processingfinancial_mutations_not_updatedsales_invoice_payment_not_linked_to_financial_mutationdataobject | nullcreated_atstring · date-timeupdated_atstring · date-time
List all time entries
Returns a paginated list of all time entries in the administration.
The filter argument allows you to filter the list of time entries. Filters are a combination of keys and values,
separated by a comma: period:this_year,state:all. The available options for filtering are:
| Filter | Type | Default | Description |
|---|---|---|---|
| state | String | all | all, open or non_billable |
| period | String | this_year | This can either be the description of a period (this_month, prev_month, next_month, this_quarter, prev_quarter, next_quarter, this_year, prev_year, next_year) or a custom period (201301..201302, 20130101..20130131) |
| contact_id | Integer | Select time entries belonging to a certain contact | |
| include_nil_contacts | Boolean | false | Whether to include time entries that have no assigned contact |
| include_active | Boolean | false | Whether to include active time entries i.e. time entries without ended_at |
| project_id | Integer | Select time entries belonging to a certain project | |
| user_id | Integer | Select time entries belonging to a certain user | |
| day | Date | Select time entries on a specific date |
You can filter by multiple states at the same time as well. To do this, separate the state values by a pipe: state:open|non_billable.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
query Parameters
filterstringpageinteger | stringper_pageinteger | string · min: 1 · max: 100 · pattern:^\d+$querystringAllows filtering by time entry description.
Responses
A list of time entries
idstring | integer · pattern:^\d+$A unique record identifier
administration_idstring | integer · pattern:^\d+$A unique record identifier of an administration
contact_idstring | integer | null · pattern:^\d+$A unique record identifier
project_idstring | integer | null · pattern:^\d+$A unique record identifier
sales_invoice_idstring | integer | null · pattern:^\d+$A unique record identifier
user_idstring | integer · pattern:^\d+$A unique record identifier
started_atstring · date-timeended_atdescriptionstringpaused_durationintegerbillableboolean | nullcreated_atstring · date-timeupdated_atstring · date-timecontactuserobjectprojectsales_invoiceeventsobject[]notesobject[]
Create a time entry
Api user needs access to both sales invoices and time entries for this action.
started_at and ended_at are rounded down to full minutes when creating a time entry, with a minimum of 1 minute between them.
path Parameters
administration_idstring | integer · pattern:^\d+$· requiredThe unique identifier of the administration
A unique record identifier of an administration
formatstring · pattern:^(.(json|xml))?$· requiredThe format in which the response is given, can be empty to use the default format
Default: .json
Responses
Time entry created
idstring | integer · pattern:^\d+$A unique record identifier
administration_idstring | integer · pattern:^\d+$A unique record identifier of an administration
contact_idstring | integer | null · pattern:^\d+$A unique record identifier
project_idstring | integer | null · pattern:^\d+$A unique record identifier
sales_invoice_idstring | integer | null · pattern:^\d+$A unique record identifier
user_idstring | integer · pattern:^\d+$A unique record identifier
started_atstring · date-timeended_atdescriptionstringpaused_durationintegerbillableboolean | nullcreated_atstring · date-timeupdated_atstring · date-timecontactuserobjectprojectsales_invoiceeventsobject[]notesobject[]