get_activity_data
ChatGPTFetch daily productivity summary data for specified user(s) or group(s) within a date range. Returns per-day metrics: productive/unproductive/undefined durations, active time, work time, offline meeting time, location, and first/last activity times.
get_all_teams_absence_data
ChatGPTDetect absent days aggregated by team for ALL teams in the account, without requiring specific group IDs. A day is absent when it is a scheduled working day, no activity is recorded, and no PTO is logged. Returns per-team: team name, member count, total absent days, members with at least one absence, and average absent days per member. Use this for org-wide absence questions like 'which teams have the most absences', 'are there teams with excessive unscheduled absences', or any cross-team absence comparison. Does not require group_ids. Default lookback: last 30 days.
get_all_teams_pto_data
ChatGPTRetrieve PTO days aggregated by team for ALL teams in the account, without requiring specific group IDs. Returns per-team: team name, member count, total PTO days, members with at least one PTO day, and average PTO days per member. Use this for org-wide questions like 'which teams have the most time off', 'are there teams with excessive time off', or any cross-team time-off comparison. Does not require group_ids. Default lookback: last 30 days.
get_all_teams_schedule_adherence
ChatGPTFetch schedule adherence metrics aggregated by team for ALL teams in the account without requiring specific group IDs. Returns per-team: total users, average goal achievement percentage, goal achievement status (Good/NeedsImprovement/Low), count of users with low adherence, total late starts, and total early ends. Use this for org-wide questions like 'which teams have the lowest schedule adherence', 'which teams are struggling with adherence', or any adherence comparison across teams. Does not require group_ids. Default window: last 14 days.
get_all_teams_utilization
ChatGPTFetch aggregated utilization metrics for ALL teams/groups in the account without needing specific group IDs. Returns per-team summary including member count, total productive hours, and workload balance classification. Use for org-wide utilization overviews.
get_all_teams_utilization_trends
ChatGPTFetch utilization trend analysis for ALL teams in the account. Returns 4-week and 12-week rolling averages, burnout risk signals, and trend status per team sorted by 12-week utilization. Use for org-wide questions like 'which teams are consistently overloaded'. Default to 84 days of history.
get_all_users_pfa_alarm_log
ChatGPTFetch Potential False Activity (PFA) findings for all users in the account.
get_all_users_schedule_adherence
ChatGPTFetch schedule adherence metrics for ALL individual users in the account without requiring specific user or group IDs. Returns per-user: late start count, early end count, goal achievement percentage and status, problem flags (LateStartIssue, EarlyEndIssue, ExtendedInactivity, LowAdherence), and consecutive weeks of low adherence. Results are sorted by most concerning adherence issues first. Use this for org-wide individual questions like 'who has been consistently late', 'who has the most early ends', 'which users have low schedule adherence', or any ranking/comparison across all users. Does not require user_ids or group_ids. Default window: last 14 days.
get_all_users_utilization
ChatGPTFetch utilization metrics for ALL individual users in the account without needing specific user IDs. Returns one row per user with overutilized/underutilized/healthy day counts, average workload ratio, and classification.
get_application_usage
ChatGPTFetch the top applications by time spent for a users or group. Returns application name, executable, time spent, percentage of total, and productivity classification. Either user_ids or group_ids must be provided.
get_application_usage_trend
ChatGPTCompare application usage between two time periods for a user or group. Returns each application's time spent in both periods, the change, percentage of total, and productivity classification, ranked by size of change. Either user_ids or group_ids must be provided. Both periods are required.
get_category_usage
ChatGPTFetch the top categories by time spent for a user, team, or group. A category groups applications and websites (e.g. 'Developer', 'Email'); unclassified activity is 'Uncategorized'. Returns category name, time spent, and percentage of total. Either user_ids or group_ids must be provided.
get_category_usage_trend
ChatGPTCompare category usage between two time periods for a user, team, or group. Returns each category's time spent in both periods, the change, and percentage of total, ranked by size of change. Unclassified activity is 'Uncategorized'. Either user_ids or group_ids must be provided. Both periods are required.
get_group_by_id
ChatGPTFetch a specific group by its numeric group_id.
get_pfa_activity_context
ChatGPTFetch the activity evidence around one PFA event, given its log_id from a prior PFA alarm log result.
get_pfa_alarm_log
ChatGPTFetch Potential False Activity (PFA) findings for a user or group. Either userIds or groupIds must be provided.
get_pto_by_user_or_group
ChatGPTFetch a user or group's PTO data by their numeric user_id or group_id. Returns a list of objects with: user_id, date, and duration. Either user_ids or group_ids must be provided.
get_schedule_adherence
ChatGPTAnalyze schedule adherence for users or a group over a date range. Returns per-user pre-computed metrics: late start/early end counts, goal achievement percentage and classification, extended inactivity flag, problem flags, and correlation patterns. Also returns team-level aggregates. Flex schedule users are excluded from late start/early end analysis. Default window: last 14 days. Either user_ids or group_ids must be provided.
get_team_absence_data
ChatGPTDetect absent days for a group of users over a date range. A day is classified as absent when it is a scheduled working day, there is no recorded activity, and no PTO is logged. Handles both flex and non-flex schedules. Returns per-user absent dates, absent day count, and a team-level total. Use this for questions about absences, missed days, or days with no activity on working days.
get_user_absence_data
ChatGPTDetect absent days for one or more users over a date range. A day is classified as absent when it is a scheduled working day, there is no recorded activity, and no PTO is logged. Handles both flex and non-flex schedules. Returns per-user absent dates, absent day count, and a team-level total. Use this for questions about absences, missed days, or days with no activity on working days.
get_user_by_id
ChatGPTFetch a specific user by their numeric user_id. Returns the user and any alias-grouped peers.
get_user_schedule
ChatGPTGet the work schedule for one or more users by their user_ids. Returns each user's schedule per day of the week, including shift start/end times. If IsFlex is true the user is on a flexible schedule. If IsWorkingDay is false the user is off on that day. Every user has a schedule — if no custom schedule is configured the account default is applied automatically. Use search_users_by_name to resolve names to user_ids first.
get_user_targets
ChatGPTFetch productivity targets for one or more users. Returns each user's configured goals: productive hours per day, focused hours per day, and collaboration hours per day.
get_utilization
ChatGPTFetch utilization metrics for specific user(s) or group(s) within a date range. Returns utilization percentage, hours worked, capacity, and efficiency metrics per user or aggregated for groups.
get_utilization_trends
ChatGPTFetch utilization trend analysis for specific teams or users. Returns weekly trends with 4-week and 12-week rolling averages, burnout signals, and capacity status. For accurate 12-week averages, provide at least 84 days of history. Either user_ids or group_ids must be provided.
get_website_details
ChatGPTDrill into one or more named websites to see the specific pages visited within them, ranked by time spent — the full URL, page title, time spent, percentage of total, and productivity classification per page. Use for questions about specific pages inside a site, not to rank whole sites. Only available when the account's Sensitive Data Visibility is Advanced Details; otherwise it returns an error and only domain-level usage can be shown. website_names, a date range, and either user_ids or group_ids are required.
get_website_usage
ChatGPTFetch the top websites by time spent for a user, team, or group. Returns website name, time spent, percentage of total, and productivity classification. Either user_ids or group_ids must be provided.
get_website_usage_trend
ChatGPTCompare website usage between two time periods for a user, team, or group. Returns each website's time spent in both periods, the change, percentage of total, and productivity classification, ranked by size of change. Either user_ids or group_ids must be provided. Both periods are required.
resolve_date_range
ChatGPTResolve a natural language date period into concrete start_date and end_date values. Call this once per user request when the user specifies a relative period (e.g. 'last month', 'this past week'). Reuse the returned dates for all subsequent tool calls.
search_groups_by_name
ChatGPTSearch for groups by name or partial name. Returns matching groups with group_id and group_name.
search_groups_by_user
ChatGPTFind all groups that a specific user belongs to.
search_users_by_group
ChatGPTFind all users who are members of a specific group.
search_users_by_name
ChatGPTSearch for users by name or partial name. Returns matching users with their IDs and usernames. Users with the same tag are grouped as a single logical user.