API Documentation
Time Entries ¶
Time Entries ¶
Time entry object represents spent time for a person.
Time can be spent tracking on a service or on a time off event.
When tracked on a service, time entry can also belong to a task.
When time entry belongs to a task, time tracked on time entry represents task worked time and will decrease time to complete on the task.
Time entry can represent:
-
Worked hours (without start and end time)
-
Worked time period (with start and end time) - in a form of a timer. More on timers here.
Following diagram shows time entries in our data hierarchy:
You can find out more about Time entries in our Help documentation for My Time
Supported filter params
-
after (date)
-
approved_at (date)
-
approver_id (array)
-
autotracked
-
before (date)
-
billing_type_id (1: fixed, 2: actuals, 3: non_billable)
-
booking_id (array)
-
budget_id (array)
-
company_id (array)
-
creator_id (array)
-
date
-
deal_id (array)
-
id
-
invoicing_status (1: not_invoiced, 2: drafted, 3: finalized)
-
invoice_attribution_id (array)
-
invoice_id (array)
-
invoiced (boolean)
-
jira_issue_id
-
jira_issue_status
-
jira_issue_summary
-
jira_worklog_id
-
last_activity_at (date)
-
last_actor_id (array)
-
person_id (array)
-
project_id (array)
-
responsible_id (array)
-
service_id (array)
-
started_at (date)
-
status (1: approved, 2: unapproved, 3: rejected)
-
status with timesheet submission feature (1: approved, 2: unapproved, 3: rejected, 5: submitted, 6: draft)
-
task_id (array)
-
time (integer)
-
track_method_id (array)
-
updated_at (date)
Supported sort params
-
date
-
updated_at
-
jira_issue_id
-
jira_issue_status
-
jira_issue_summary
Filter operations are supported on this endpoint.
GET /api/v2/time_entries
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": [
{
"id": "222",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:18:41.728+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:18:41.728+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:18:41.728+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2051"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
}
],
"links": {
"first": "http://api-test.productive.io/api/v2/time_entries?page%5Bnumber%5D=1&page%5Bsize%5D=30",
"last": "http://api-test.productive.io/api/v2/time_entries?page%5Bnumber%5D=1&page%5Bsize%5D=30"
},
"meta": {
"current_page": 1,
"total_pages": 1,
"total_count": 1,
"page_size": 30,
"max_page_size": 200
}
}
GET /api/v2/time_entries?filter[after]=2019-10-21&sort=date
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": [],
"links": {
"first": "http://api-test.productive.io/api/v2/time_entries?filter%5Bafter%5D=2019-10-21&page%5Bnumber%5D=1&page%5Bsize%5D=30&sort=date",
"last": "http://api-test.productive.io/api/v2/time_entries?filter%5Bafter%5D=2019-10-21&page%5Bnumber%5D=0&page%5Bsize%5D=30&sort=date"
},
"meta": {
"current_page": 1,
"total_pages": 0,
"total_count": 0,
"page_size": 30,
"max_page_size": 200
}
}
GET /api/v2/time_entries?filter[after]=10/21/19&sort=date
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "unprocessable_entity",
"code": "unsupported_filter_value_type",
"title": "Unsupported filter value type",
"detail": "Unsupported value '10/21/19' for filter 'after' on this endpoint. Expected a value of type 'Date'",
"source": {
"parameter": "filter[after]"
}
}
]
}
Get time entriesGET/api/v2/time_entries
GET /api/v2/time_entries/225
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "225",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:18:42.599+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:18:42.599+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:18:42.599+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2054"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
Gets a time entryGET/api/v2/time_entries/{id}
- id
number
(required) Example: 1time_entry id
POST /api/v2/time_entries
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "time_entries",
"attributes": {
"note": "test note",
"date": "2016-10-01",
"time": 480
},
"relationships": {
"person": {
"data": {
"type": "people",
"id": "8160"
}
},
"service": {
"data": {
"type": "services",
"id": "1192"
}
},
"task": {
"data": {
"type": "tasks",
"id": "444"
}
}
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "227",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:18:43.688+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:18:43.688+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": true,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:18:43.688+02:00",
"submitted": false,
"currency": "EUR",
"currency_default": "USD",
"currency_normalized": "EUR",
"cost": 16000,
"cost_default": 20000,
"cost_normalized": 16000,
"work_cost": 16000,
"work_cost_default": 20000,
"work_cost_normalized": 16000,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2055"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
POST /api/v2/time_entries
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "time_entries",
"attributes": {
"date": ""
},
"relationships": {
"person": {
"data": {
"type": "people",
"id": "8184"
}
},
"service": {
"data": {
"type": "services",
"id": "1196"
}
}
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "can't be blank",
"source": {
"pointer": "data/attributes/date"
}
},
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "is not a date",
"source": {
"pointer": "data/attributes/date"
}
}
]
}
POST /api/v2/time_entries
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "time_entries",
"attributes": {
"note": "test note",
"date": "2016-10-01"
},
"relationships": {
"person": {
"data": {
"type": "people",
"id": "8405"
}
},
"service": {
"data": {
"type": "services",
"id": "1229"
}
}
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "280",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:26.260+02:00",
"time": 0,
"billable_time": 0,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:26.260+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": true,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:26.260+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2092"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
Create a time entryPOST/api/v2/time_entries
- date
date
(required) Example: 2018-01-01date
- service_id
number
(required) Example: 1service id
- person_id
number
(required) Example: 1person id
- task_id
number
(optional) Example: 1task id
- note
string
(optional) Example: Notenote
- time
number
(optional) Example: 60time in minutes
- jira_issue_id
string
(optional) Example: 1jira issue id
- jira_worklog_id
string
(optional) Example: 1jira worklog id
- jira_organization
string
(optional) Example: 1jira organization id
- jira_issue_status
string
(optional) Example: Statusjira issue status
- jira_issue_summary
string
(optional) Example: Summaryjira issue summary
- rejected_reason
string
(optional) Example: Reasonrejected reason
- started_at
datetime
(optional) Example: 2022-12-20T10%3A15%3A20.099Ztimestamp
- calendar_event_id
number
(optional) Example: 1calendar event id
PATCH /api/v2/time_entries/281
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"attributes": {
"date": "2024-02-23",
"time": 40,
"billable_time": 40,
"note": "new note",
"calendar_event_id": null,
"jira_issue_id": null,
"jira_issue_summary": null,
"jira_issue_status": null,
"jira_organization": null,
"jira_worklog_id": null
},
"type": "time-entries"
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "281",
"type": "time_entries",
"attributes": {
"date": "2024-02-23",
"created_at": "2025-08-01T06:19:27.155+02:00",
"time": 40,
"billable_time": 40,
"note": "new note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:27.503+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": true,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:27.155+02:00",
"submitted": false,
"currency": "EUR",
"currency_default": "USD",
"currency_normalized": "EUR",
"cost": 1333,
"cost_default": 1667,
"cost_normalized": 1333,
"work_cost": 1333,
"work_cost_default": 1667,
"work_cost_normalized": 1333,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2093"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
PATCH /api/v2/time_entries/285
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"data": {
"type": "time_entries",
"attributes": {
"date": ""
}
}
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "can't be blank",
"source": {
"pointer": "data/attributes/date"
}
},
{
"status": "422",
"code": "invalid_attribute",
"title": "Invalid Attribute",
"detail": "is not a date",
"source": {
"pointer": "data/attributes/date"
}
}
]
}
Update a time entryPATCH/api/v2/time_entries/{id}
- id
number
(required) Example: 1time_entry id
PATCH /api/v2/time_entries/317/approve
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "317",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:42.565+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": true,
"approved_at": "2025-08-01T06:19:42.000+02:00",
"updated_at": "2025-08-01T06:19:42.661+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:42.565+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2117"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
Approves a time entryPATCH/api/v2/time_entries/{id}/approve
- id
number
(required) Example: 1time_entry id
PATCH /api/v2/time_entries/320/unapprove
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "320",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:44.294+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:44.401+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:44.294+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2120"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
Unapproves a time entryPATCH/api/v2/time_entries/{id}/unapprove
- id
number
(required) Example: 1time_entry id
PATCH /api/v2/time_entries/bulk_approve
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"ids": [
325,
326
]
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": [
{
"id": "325",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:46.403+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": true,
"approved_at": "2025-08-01T06:19:46.000+02:00",
"updated_at": "2025-08-01T06:19:46.620+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:46.403+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2124"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
{
"id": "326",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:46.511+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": true,
"approved_at": "2025-08-01T06:19:46.000+02:00",
"updated_at": "2025-08-01T06:19:46.620+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:46.511+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2124"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
}
],
"meta": {}
}
Bulk approves time entriesPATCH/api/v2/time_entries/bulk_approve
PATCH /api/v2/time_entries/bulk_unapprove
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Body
{
"ids": [
334,
335
]
}
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": [
{
"id": "334",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:48.476+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:48.698+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:48.476+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2127"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
{
"id": "335",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:48.606+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:48.698+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:48.606+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2127"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
}
],
"meta": {}
}
Bulk unapproves time entriesPATCH/api/v2/time_entries/bulk_unapprove
PATCH /api/v2/time_entries/342/reject
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "342",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:50.522+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:50.629+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": true,
"rejected_reason": null,
"rejected_at": "2025-08-01T06:19:50.621+02:00",
"last_activity_at": "2025-08-01T06:19:50.522+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2130"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
PATCH /api/v2/time_entries/343/reject
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "409",
"code": "record_already_approved",
"title": "Conflict error",
"source": {}
}
]
}
Reject a time entryPATCH/api/v2/time_entries/{id}/reject
- id
number
(required) Example: 1time_entry id
PATCH /api/v2/time_entries/345/unreject
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"data": {
"id": "345",
"type": "time_entries",
"attributes": {
"date": "2016-10-01",
"created_at": "2025-08-01T06:19:52.257+02:00",
"time": 480,
"billable_time": 480,
"note": "test note",
"track_method_id": 1,
"started_at": null,
"timer_started_at": null,
"timer_stopped_at": null,
"approved": false,
"approved_at": null,
"updated_at": "2025-08-01T06:19:52.365+02:00",
"calendar_event_id": null,
"invoice_attribution_id": null,
"invoiced": false,
"overhead": false,
"rejected": false,
"rejected_reason": null,
"rejected_at": null,
"last_activity_at": "2025-08-01T06:19:52.257+02:00",
"submitted": false,
"currency": "USD",
"currency_default": "USD",
"currency_normalized": "USD",
"cost": 0,
"cost_default": 0,
"cost_normalized": 0,
"work_cost": 0,
"work_cost_default": 0,
"work_cost_normalized": 0,
"overhead_cost": 0,
"overhead_cost_default": 0,
"overhead_cost_normalized": 0,
"internal_overhead_cost": 0,
"internal_overhead_cost_default": 0,
"internal_overhead_cost_normalized": 0,
"facility_overhead_cost": 0,
"facility_overhead_cost_default": 0,
"facility_overhead_cost_normalized": 0
},
"relationships": {
"organization": {
"data": {
"type": "organizations",
"id": "2133"
}
},
"person": {
"meta": {
"included": false
}
},
"service": {
"meta": {
"included": false
}
},
"task": {
"meta": {
"included": false
}
},
"approver": {
"meta": {
"included": false
}
},
"updater": {
"meta": {
"included": false
}
},
"rejecter": {
"meta": {
"included": false
}
},
"creator": {
"meta": {
"included": false
}
},
"last_actor": {
"meta": {
"included": false
}
},
"person_subsidiary": {
"meta": {
"included": false
}
},
"deal_subsidiary": {
"meta": {
"included": false
}
},
"timesheet": {
"meta": {
"included": false
}
},
"approval_statuses": {
"meta": {
"included": false
}
}
}
},
"meta": {}
}
PATCH /api/v2/time_entries/346/unreject
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Headers
Content-Type: application/vnd.api+json; charset=utf-8
Body
{
"errors": [
{
"status": "409",
"code": "record_already_unrejected",
"title": "Conflict error",
"source": {}
}
]
}
Unreject a time entryPATCH/api/v2/time_entries/{id}/unreject
- id
number
(required) Example: 1time_entry id
DELETE /api/v2/time_entries/352
Headers
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Content-Type: application/vnd.api+json
Deletes a time entryDELETE/api/v2/time_entries/{id}
- id
number
(required) Example: 1time_entry id
Generated by aglio on 01 Aug 2025