Feature #44024
openAdd REST API support for configuring project-specific time tracking activities
Description
Redmine currently allows users to configure time tracking activities at project level through the web interface, but this configuration is not exposed as a writable resource in the REST API.
The REST API allows project details to be retrieved with `include=time_entry_activities`, which makes it possible to read the activities available for a project. However, there does not appear to be a documented way to enable, disable, or update the set of time entry activities associated with a specific project via the API.
This feature request proposes adding REST API support for managing project-specific time tracking activities.
Use case
Organisations that manage Redmine projects programmatically often need to provision projects automatically, including:
- project metadata;
- enabled modules;
- trackers;
- issue categories;
- members and roles;
- custom fields;
- time tracking configuration.
At the moment, project creation and configuration can be partially automated using the REST API, but time tracking activity configuration still requires manual intervention through the Redmine UI.
This creates friction when provisioning large numbers of projects or when maintaining consistent project templates across multiple Redmine instances.
Expected behaviour
Redmine should expose a supported REST API mechanism to configure which time tracking activities are enabled for a project.
Proposed acceptance criteria
1. The REST API allows an authorised user to update the set of time tracking activities enabled for a project.
2. The API applies the same permission and validation rules as the project settings UI.
3. The updated activities are visible through `GET /projects/:id.json?include=time_entry_activities`.
4. Invalid activity IDs return a clear validation error.
5. Unauthorised users receive `403 Forbidden`.
6. The API documentation is updated with request and response examples.
No data to display