Activity Feed
The Activity endpoints return chronological activity feeds for various entities such as projects, tasks, documents, time entries, private tasks, and risks. All endpoints are read-only (GET).
Both URL variants for each feed type are functionally equivalent. The query parameter variant (?searchTerm=) is recommended for readability.
Use skip and take for pagination. Activity feeds can return large datasets — always paginate to avoid performance issues.
Common Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
projectId | guid | ✅ | Unique identifier of the project. |
filter | string | ✅ | Filter expression for activity types. |
skip | int32 | ✅ | Number of records to skip (pagination offset). |
take | int32 | ✅ | Number of records to return (page size). |
searchTerm | string | — | Optional text search within activities. |
Entity-Specific Identifiers
| Parameter | Type | Required | Description |
|---|---|---|---|
taskItemId | guid | ✅ | Unique identifier of the task. |
documentId | guid | ✅ | Unique identifier of the document. |
timeEntryId | guid | ✅ | Unique identifier of the time entry. |
riskId | guid | ✅ | Unique identifier of the risk. |
Endpoints
Project Activity Feed
/odata/Activity/GetProjectActivityFeed(projectId={projectId},filter={filter},skip={skip},take={take})Get project activity feed (searchTerm as query parameter)
Accepts an optional ?searchTerm= query parameter to filter results by text.
/odata/Activity/GetProjectActivityFeed(projectId={projectId},filter={filter},skip={skip},take={take},searchTerm={searchTerm})Get project activity feed (searchTerm in path)
Task Activity Feed
/odata/Activity/GetTaskActivityFeed(taskItemId={taskItemId},projectId={projectId},filter={filter},skip={skip},take={take})Get task activity feed (searchTerm as query parameter)
Accepts an optional ?searchTerm= query parameter to filter results by text.
/odata/Activity/GetTaskActivityFeed(taskItemId={taskItemId},projectId={projectId},filter={filter},skip={skip},take={take},searchTerm={searchTerm})Get task activity feed (searchTerm in path)
Document Activity Feed
/odata/Activity/GetDocumentActivityFeed(documentId={documentId},projectId={projectId},filter={filter},skip={skip},take={take})Get document activity feed (searchTerm as query parameter)
Accepts an optional ?searchTerm= query parameter to filter results by text.
/odata/Activity/GetDocumentActivityFeed(documentId={documentId},projectId={projectId},filter={filter},skip={skip},take={take},searchTerm={searchTerm})Get document activity feed (searchTerm in path)
Time Entry Activity Feed
/odata/Activity/GetTimeEntryActivityFeed(timeEntryId={timeEntryId},projectId={projectId},filter={filter},skip={skip},take={take})Get time entry activity feed (searchTerm as query parameter)
Accepts an optional ?searchTerm= query parameter to filter results by text.
/odata/Activity/GetTimeEntryActivityFeed(timeEntryId={timeEntryId},projectId={projectId},filter={filter},skip={skip},take={take},searchTerm={searchTerm})Get time entry activity feed (searchTerm in path)
Private Task Activity Feed
/odata/Activity/GetPrivateTaskActivityFeed(taskItemId={taskItemId},filter={filter},skip={skip},take={take})Get private task activity feed (searchTerm as query parameter)
Accepts an optional ?searchTerm= query parameter to filter results by text.
Private task endpoints do not include a projectId parameter, since private tasks are not associated with a project.
/odata/Activity/GetPrivateTaskActivityFeed(taskItemId={taskItemId},filter={filter},skip={skip},take={take},searchTerm={searchTerm})Get private task activity feed (searchTerm in path)
Risk Activity Feed
/odata/Activity/GetRiskActivityFeed(riskId={riskId},projectId={projectId},filter={filter},skip={skip},take={take})Get risk activity feed (searchTerm as query parameter)
Accepts an optional ?searchTerm= query parameter to filter results by text.
/odata/Activity/GetRiskActivityFeed(riskId={riskId},projectId={projectId},filter={filter},skip={skip},take={take},searchTerm={searchTerm})Get risk activity feed (searchTerm in path)