> ## Documentation Index
> Fetch the complete documentation index at: https://docs.encord.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Orm.analytics

## CollaboratorTimersGroupBy Objects

```python theme={"dark"}
class CollaboratorTimersGroupBy(CamelStrEnum)
```

Grouping mode for collaborator time tracking analytics.

**Values**:

* **DATA\_UNIT:** Group time spent per individual data unit.
* **PROJECT:** Group time spent at the project level.

## CollaboratorTimerParams Objects

```python theme={"dark"}
class CollaboratorTimerParams(BaseDTO)
```

Parameters for fetching collaborator timer analytics.

**Arguments**:

* `project_hash` - Identifier of the project to query.
* `after` - Start of the time window (inclusive).
* `before` - Optional end of the time window (exclusive). If omitted, the server will typically use the current time.
* `group_by` - How to group results, for example by data unit or by project.
* `page_size` - Maximum number of records to return in a single page.
* `page_token` - Pagination token returned from a previous response, used to fetch the next page of results.

## CollaboratorTimer Objects

```python theme={"dark"}
class CollaboratorTimer(BaseDTO)
```

Time spent by a single collaborator within the requested window.

**Arguments**:

* `user_email` - Email address of the collaborator.
* `user_role` - Role of the user in the project (for example, annotator or reviewer).
* `data_title` - Optional title of the data item this timer row refers to. May be `None` when grouped at the project level.
* `time_seconds` - Total time spent (in seconds) matching the query filters.

## TimeSpentParams Objects

```python theme={"dark"}
class TimeSpentParams(BaseDTO)
```

Filter parameters for fetching aggregated time spent analytics.

**Arguments**:

* `project_uuid` - Unique identifier of the project to query.
* `after` - Start of the time window (inclusive).
* `before` - Optional end of the time window (exclusive). If omitted, uses current time.
* `workflow_stage_uuids` - Optional subset of workflow stages to include.
* `user_emails` - Optional list of user emails to filter by.
* `dataset_uuids` - Optional subset of datasets to include.
* `data_uuids` - Optional subset of data items to include.
* `data_title` - Optional fuzzy match string on data title.
* `page_token` - Pagination token from a previous response.

## TimeSpent Objects

```python theme={"dark"}
class TimeSpent(BaseDTO)
```

Aggregated time spent for a user or stage within a time bucket.

**Arguments**:

* `period_start_time` - Beginning of the aggregation period.
* `period_end_time` - End of the aggregation period.
* `time_spent_seconds` - Total time spent (in seconds) in this period.
* `user_email` - Email of the user this row refers to.
* `project_user_role` - Role of the user in the project (annotator, reviewer, etc.).
* `data_uuid` - Unique identifier of the data item.
* `data_title` - Human-readable title of the data item.
* `dataset_uuid` - Unique identifier of the dataset.
* `dataset_title` - Human-readable dataset title.
* `workflow_task_uuid` - Optional workflow task identifier.
* `workflow_stage` - Optional workflow stage object associated with this row.

## TaskActionType Objects

```python theme={"dark"}
class TaskActionType(CamelStrEnum)
```

Types of actions that can be performed on workflow tasks.

**Attributes**:

* `ASSIGN` - A task was assigned to a user.
* `APPROVE` - A task was approved.
* `SUBMIT` - A task was submitted.
* `MOVE` - A task was moved to a different workflow stage.
* `REJECT` - A task was rejected.
* `RELEASE` - A task was released from its current assignee.
* `SKIP` - A task was skipped.

## TaskAction Objects

```python theme={"dark"}
class TaskAction(BaseDTO)
```

Task action event returned by the task actions endpoint.

**Arguments**:

* `timestamp` - Time when the action occurred.
* `action_type` - Type of action (e.g., ASSIGN, SUBMIT, APPROVE).
* `project_uuid` - UUID of the project.
* `workflow_stage_uuid` - UUID of the workflow stage.
* `task_uuid` - UUID of the task.
* `data_unit_uuid` - UUID of the data unit.
* `actor_email` - Email address of the user who performed the action.

## TaskActionParams Objects

```python theme={"dark"}
class TaskActionParams(BaseDTO)
```

Parameters for get\_task\_actions API call.

**Arguments**:

* `project_uuid` - UUID of the project to query.
* `after` - Start of the time window (inclusive).
* `before` - End of the time window (exclusive).
* `actor_emails` - Optional list of user email addresses to filter by.
* `event_types` - Optional list of action types to filter by.
* `workflow_stage_uuids` - Optional list of workflow stage UUIDs to filter by.
* `data_unit_uuids` - Optional list of data unit UUIDs to filter by.
