Changelog
This page contains a list of past and upcoming changes to the awork API. We always try our best to prevent breaking changes, but sometimes we canāt avoid making some changes in order to release a new awesome feature. š
Subscribe to API updates and other developer news.
Upcoming changes
This section shows upcoming changes.
šØ Upcoming deprecations for API models:
- The
RemainingDurationandTotalRemainingDurationproperties of theTaskModelare deprecated and will be removed at the end of the year.
Workflows: project and task statuses can be shared across projects šØ
With the Workflows feature, project and task statuses can now be inherited from a workflow and shared across all projects linked to that workflow.
As a result, integrations that fetch statuses and filter by projectId only can miss relevant statuses. Status models can now return workflowId instead of projectId.
Latest rollout deadline for affected ERP/custom integrations: July 31, 2026.
Upgrade your integration before July 31, 2026 to avoid issues.
Rollout note:
- For workspaces with known ERP or custom integrations, the Workflows feature can remain deactivated until July 31, 2026 at the latest.
- Integrations should be upgraded before July 31, 2026 to avoid issues when Workflows are enabled.
- Workflows can be enabled earlier on request once the integration is ready.
- Please let us know once your integration has been updated or verified to be compatible, so we can enable Workflows for workspaces using that integration.
Why this is breaking:
- Previously, integrations often filtered status lists by
projectId. - With workflow-based statuses,
projectIdcan benullandworkflowIdis set. - Task statuses from different projects can now have the same
idwhen those projects use the same workflow. - If your client aggregates task statuses from multiple projects into one list and keys by
idonly, this can lead to duplicate entries/collisions.
Project status example before:
Project status example with Workflows:
Task status example with Workflows:
Migration path
Use project-scoped endpoint to fetch project statuses.
Keep using global endpoint and filter by workflowId or projectId.
Recommended migration path
Recommended
Switch to the project-specific endpoint to fetch project statuses.
- For project statuses, use
GET /projects/{projectId}/projectstatuses. - For task statuses, use
GET /projects/{projectId}/taskstatuses. - These endpoints return statuses relevant for the project, regardless of whether they are project-specific or inherited from the linked workflow.
- Complete this migration before July 31, 2026 if your workspace currently has Workflows deactivated due to ERP/custom integrations.
- For client-side mapping, use a composite key such as
projectId + id(orworkflowId + id) instead ofidalone when combining statuses from multiple projects.
Project and task statuses can either have the projectId or workflowId set, depending on whether they are project or workflow specific.
Alternative migration path
Not recommended
Keep using global endpoint and filter by workflowId or projectId.
If you need to keep using the global endpoint, for example due to a high amount of projects:
- Fetch the project statuses as before.
- Fetch the project first and check
workflowId. - If
workflowIdis set, filter statuses byworkflowId. - If
workflowIdis null, filter statuses byprojectId.
Projects with and without workflows can exist in the same workspace. This means that GET /projectstatuses will return project-scoped statuses as well as workflow-scoped statuses in one list.
- If the project has a
workflowIdset, filter the global list of project statuses you retrieved earlier by thisworkflowId. If it does not have a workflow set, use theprojectIdas before.
Questions and support
If you have any questions or need support, please lets us know to our awork Community Developer Forum.
Recent changes
This section shows you recent changes that are already live in our API.
Edge security update š
We updated our edge security configuration, which might lead to some invalid or suspicious requests to be blocked with a 403 Forbidden status code. Please check your API request if this is the case. Should you need any help, please contact us in the developer forum and provide us with the X-Edge-Ref and Trace-Id header values where available.
New: Retainer projects š
Retainer budgets have been a highly requested feature in awork that we are finally releasing. Retainer budgets help you manage recurring time budgets for projects. As part of the release, the Project model gets a new property isRetainer which is set to true if the project has at least one retainer budget. You can retrieve the retainers of a project via the new GET /projects/{projectId}/retainers endpoint.
Managing retainers is currently only possible via the web app.
timebudget property of a retainer project cannot be updated manually but instead shows the sum of all timebudgets of all retainer budgets of the project.New: Custom Fields š
Custom fields is one of the most highly requested features in awork. They allow users to add custom properties to tasks via projects and project templates. Custom fields can be of different types, such as text, number, date, and more.
They are also a great way to store additional information in tasks, such as an external Id, which makes it a lot easier to integrate awork with other tools via the API.
See the Custom Fields Overview & API Reference for more information.
Domain changed to awork.com: clients need to update URLs šØ
We have recently switched our primary domain from awork.io to awork.com. The application and website remain available at both domains for the time being, however, by end of December 2023, clients must have updated to awork.com to continue using the awork API.
Projects, Tasks and Users: Key and NumberCount properties removed šØ
The Key property of Projects, Tasks and Users as well as the NumberCount property of Tasks have been removed. These properties were never used in the awork web app, so weāre removing them from the API models as well.
These changes are happening in the API on 26.05.2023 in the evening.
Tasks: EntityId is deprecated šØ
The EntityId in the Task model is deprecated and will be removed in the future. Use UserId for private tasks and ProjectId for project tasks instead.
These changes are happening in the API on 05.05.2023 in the evening.
Tasks: several nested fields removed šØ
The following nested fields have been removed from the model for performance reasons:
These changes are happening in the API on 05.05.2023 in the evening.
Subtasks become Checklists šØ
We are adding a new feature called Subtasks, therefore we are renaming the currently existing Subtasks to Checklists. The new Subtasks will be more powerful and bring a new level of planning to awork.
In the following endpoints, subtasks will be renamed to checklists. The functionality remains the same.
This change is happening in the API on 03.03.2023 in the evening.
API Rate Limits for API clients šØ
We are introducing API rate limits that will limit the number of requests external API clients can make to a workspace. These limits depend on the plan of the workspace. The limits are shared by all external client applications across the workspace. Please see Rate Limits for details.
This change is happening in the API on 03.03.2023 in the evening.
Workload calculation - Single user calculation removal šØ
We are deprecating the endpoint
GET /users/{userId}/workload
in favour of the new one:
GET /users/workload
This new endpoint will provide multiple user results in a single request, plus it has the option to fetch the details of the workload calculation.
The legacy endpoint will still be active up to 01.01.2023.
Then it will be removed.
Project Member Capacity - Endpoints removal šØ
With the introduction of the project time bookings, we are migrating all the project member capacities to them.
As such, all the related endpoints are being deprecated and will not have any meaningful effect on the workload calculations:
GET /projects/{projectId}/members/{projectMemberId}/capacityPUT /projects/{projectId}/members/{projectMemberId}/capacityGET /projects/{projectId}/members/capacities
We will remove those endpoints and the related data starting from 01.01.2023
User Capacity - Property Removed New Endpoint šØ
The User model currently has a CapacityPerWeek property, which weāre removing soon. This property is getting itās own endpoint: /users/{userId}/capacity
This endpoint has GET and PUT methods to retrieve and edit the userās weekly capacity. The GET model looks like this:
For a short time, both the property and the new endpoints will exist in parallel to be backward-compatible. We will remove the old property starting in March 2022. Please update your API client accordingly.
Project Templates - Auto Billability šØ
Currently, projects have one property called IsBillableByDefault ,which decides whether time entries created on that project are marked as billable or not. This is either set by the project template, or if no project template was used for creation, by whether the project has a company or not. In the case of a company, the times are marked as billed, otherwise the times are marked as not billable.
The problem is, that the project template always overrules this company rule. We need to have more flexibility here, so we change the IsBillableByDefault property on the project template from a boolean to a string field with the possible values: on, off, auto.
When the auto option is set, the IsBillableByDefault of the project on project creation will be set according to the company rule, so true if a company is set and false if no company is set.
Multi-User Assignment - 18.09.21 šØ
This release adds the highly requested feature to assign multiple users to the same task. As a result, we reworked the endpoints that allow assigning multiple users to tasks and task templates as well as automations.
If you want to use this feature, please enable the task setting āAllow multi-user assignmentā in awork in the workspace settings page. Alternatively, you can activate the setting by calling the tasks/settings endpoint from below with the setting name allow-multi-user-assignment.
Older Changes
Older changes can be found in the release articles on our roadmap https://www.awork.com/roadmap/ šµš»āāļø

