For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
SupportDeveloper ForumLogin
  • Overview
    • Introduction
    • Getting Started
    • Integration Example (PSA)
    • Authentication
    • Error Handling
    • Pagination
    • Filtering
    • Ordering
    • Rate Limits
    • Permissions
    • Webhooks
    • MCP Server
    • Versioning
    • Changelog
    • Support
  • API v1 Reference
    • Projects Overview
    • Tasks Overview
    • Time Tracking Overview
      • GETReturns the last time entry of a specified user.
      • GETReturns all time entries of the specified project.
      • GETReturns all time entries of the specified task.
      • GETReturns all time entries.
      • POSTCreates a new time entry.
      • POSTEdits multiple time entries using the specified operation.
      • POSTDeletes the time entry with the specified ids.
      • POSTSets the time entries with the specified ids to billable.
      • POSTSets the time entries with the specified ids to billed.
      • POSTSets the type of work of the specified timeentries.
      • POSTSets the time entries with the specified ids to unbillable.
      • POSTSets the time entries with the specified ids to unbilled.
      • GETRetrieves all time entries with a simplified model based on the grouping parameter.
      • GETGet a time entry by id.
      • PUTUpdates the time entry with the specified id.
      • DELDeletes the time entry with the specified id.
      • POSTHandles removing all breaks from a time entry, effectively resuming the timer.
      • GETReturns the last time entry of a specified user.
    • Documents Overview
    • Search Overview
    • Companies Overview
    • Users Overview
    • Files & Images Overview
    • Custom Fields Overview
    • Workload & Planning Overview
    • Project Templates Overview
    • Workflows Overview
    • Login & Access Overview
    • API Management Overview
LogoLogo
SupportDeveloper ForumLogin
API v1 ReferenceTime Entries

Edits multiple time entries using the specified operation.

POST
https://api.awork.com/api/v1/timeentries/batch/:operation
POST
/api/v1/timeentries/batch/:operation
$curl -X POST https://api.awork.com/api/v1/timeentries/batch/operation \
> -H "Authorization: Bearer <token>" \
> -H "Content-Type: application/json" \
> -d '{
> "timeEntryIds": [
> "f47ac10b-58cc-4372-a567-0e02b2c3d479",
> "9c858901-8a57-4791-81fe-4c455b099bc9",
> "3fa85f64-5717-4562-b3fc-2c963f66afa6"
> ]
>}'
1{
2 "ok": {
3 "ids": [
4 "f47ac10b-58cc-4372-a567-0e02b2c3d479",
5 "3fa85f64-5717-4562-b3fc-2c963f66afa6"
6 ]
7 },
8 "notFound": {
9 "ids": [
10 "11111111-2222-3333-4444-555555555555"
11 ]
12 },
13 "unauthorized": {
14 "ids": [
15 "9c858901-8a57-4791-81fe-4c455b099bc9"
16 ]
17 },
18 "badRequest": {
19 "ids": []
20 }
21}
The user is only allowed to edit time entries they have permissions for. Returns MultiStatus. Includes the list of successfully changed, not found, unauthorized, and invalid time entry ids. Returns BadRequest if the validation of the form fails, f.e. the new type of work cannot be found. Returns NotFound if the operation route value is not supported. Supported Operations: <ul> <li> <i>delete</i>: Deletes all time entries. Only admins can delete already billed time entries.</li> <li> <i>setTypeOfWork</i>: Changes the type of work for a list of time entries.</li> <li> <i>setIsBillable</i>: Changes the billability for a list of time entries. Already billed time entries can only be changed to being unbillable by admins. In this case, the IsBilled flag is also set to false.</li> <li> <i>setIsBilled</i>: Changes the billing status for a list of time entries. Only admins can change the billing status back to unbilled for already billed time entries.</li> <li> <i>setProject</i>: Changes the project for a list of time entries. Only admins can change the project for already billed time entries. Setting the project unsets the previous project and task.</li> <li> <i>setTask</i>: Changes the task for a list of time entries. Only admins can change the task for already billed time entries. Setting the task automatically sets the project if that task is a project task.</li> <li> <i>setUser</i>: Changes the user for a list of time entries. Only admins can change the user for already billed time entries.</li> </ul> <Check title="Required Permissions" icon="key">Any authenticated user.</Check>
Was this page helpful?
Previous

Deletes the time entry with the specified ids.

Next
Built with

The user is only allowed to edit time entries they have permissions for. Returns MultiStatus. Includes the list of successfully changed, not found, unauthorized, and invalid time entry ids. Returns BadRequest if the validation of the form fails, f.e. the new type of work cannot be found. Returns NotFound if the operation route value is not supported.

Supported Operations:

    <li> <i>delete</i>: Deletes all time entries. Only admins can delete already billed time entries.</li> <li> <i>setTypeOfWork</i>: Changes the type of work for a list of time entries.</li> <li> setIsBillable: Changes the billability for a list of time entries. Already billed time entries can only be changed to being unbillable by admins. In this case, the IsBilled flag is also set to false.</li> <li> setIsBilled: Changes the billing status for a list of time entries. Only admins can change the billing status back to unbilled for already billed time entries.</li> <li> setProject: Changes the project for a list of time entries. Only admins can change the project for already billed time entries. Setting the project unsets the previous project and task.</li> <li> setTask: Changes the task for a list of time entries. Only admins can change the task for already billed time entries. Setting the task automatically sets the project if that task is a project task.</li> <li> <i>setUser</i>: Changes the user for a list of time entries. Only admins can change the user for already billed time entries.</li>

Required Permissions
Any authenticated user.

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

operationstringRequired
The batch operation type.

Request

The time entry batch operation data.
timeEntryIdslist of stringsRequired
The list of time entry ids to perform the batch operation on.
newTypeOfWorkIdstring or nullOptionalformat: "uuid"
The id of the new type of work. Required for operation 'setTypeOfWork'.
isBillableboolean or nullOptional
Set the billable flag for time entries. Required for operation 'setIsBillable'.
isBilledboolean or nullOptional
Set the billed flag for time entries. Required for operation 'setIsBilled'.
newUserIdstring or nullOptionalformat: "uuid"
The id of the new user to assign the time entries to. Required for operation 'setUser'.
newProjectIdstring or nullOptionalformat: "uuid"
The id of the new project to assign the time entries to. Required for operation 'setProject'.
newTaskIdstring or nullOptionalformat: "uuid"
The id of the new task to assign the time entries to. Required for operation 'setTask'.

Response

Multi-Status

okobject
notFoundobject
unauthorizedobject
badRequestobject

Errors

400
Bad Request Error
404
Not Found Error