WebWork Time Tracker
ProductivityWebWork Time Tracker is the time tracking and workforce monitoring platform. Agents manage workspaces, members, and teams, create projects, contracts, and tasks, read the live tracker and time entries, approve timesheets, leave, and time requests, pull attendance and activity reports, and react to webhook events.
What This Integration Enables
WebWork Time Tracker is a monitoring platform, and this page is not going to pretend otherwise. Alongside projects, tasks and timesheets it captures screenshots from the desktop tracker, classifies which applications and websites people used, computes an activity percentage from keyboard and mouse input, and records GPS points from the mobile tracker against geofenced job sites. Companies adopt it when they need evidence, usually for distributed contractors or field crews, and that is a legitimate reason. It also means every automation built on top of it is handling data about identified people rather than about work items.
FlowRunner agents cover the whole V2 surface:
- workspaces, members, teams, titles and read-only project viewers
- projects, project groups and the contracts that connect a person to a project
- tasks with their statuses, assignees and comments
- the live tracker, manual time entries and retrospective time requests
- timesheets, leave, attendance and ten reports
- job sites, shifts, assets, custom fields and expenses
- webhooks, plus a realtime trigger that reacts to workspace events as they happen
Every one of these operations is built and verified against the WebWork official API.
The design position that shapes this whole page is simple. Agents should do the assembly, the reconciliation and the routing. They should not be the thing that decides what gets recorded of a person, and they should not turn a monitoring number into a conclusion about somebody. Those are the moments a person owns.
Without FlowRunner
With FlowRunner
Use Case Scenarios
-
Onboarding that ends in a decision rather than a default
A start date lands from BambooHR. An agent invites the person into the workspace with their role and weekly limit, assigns them to their team and title, and assembles the contracts that will give them access to their projects. It does not create those contracts. Instead it posts the proposed list to the people lead with the recording level each one would apply, because the contract is where that gets set. Once confirmed, Create Contract writes them, Assign Task hands over the first pieces of work, and a welcome message goes out through Slack. The whole setup happens in one run, and the one part that concerns a person's privacy is answered by a person.
-
Attendance exceptions routed to the person who can fix them
Get Daily Attendance Report answers who was late, left early, tracked less than expected, was absent, or was on leave. An agent reads it each morning, drops the rows already explained by an approved leave request, and routes what remains to each team manager with the context attached. A tracker left running overnight becomes a correction. A missing morning becomes a question to the person, not an entry in a report about them. The exception list shrinks to the handful that genuinely need a human, which is the point of running it at all.
-
The approval queue that does not go stale
List Timesheets, List Time Requests and List Leave Requests each carry a status. An agent sweeps all three, groups them by approver, and posts one message per approver with what is waiting and how long it has waited. Approvals and rejections write back through Approve Timesheet, Approve Time Request and Approve Leave Request, and a rejection carries the reason the API requires, which WebWork shows to the person. Because that reason is read by the employee rather than filed internally, the agent never generates it. It carries one a human wrote.
Human-in-Loop Highlight
The most consequential parameter in this connector is not a delete. It is Screenshot Mode on Create Contract and Update Contract. A contract is how a member is assigned to a project, which sounds like routine access management, and it carries the setting that decides what the desktop tracker records of that person's screen. Six of the nine values are video capture. A bulk onboarding flow that copies the last contract's settings is choosing a level of surveillance for a person who is not party to the API call and may never see the setting.
So a FlowRunner onboarding agent stops before Create Contract, every time. It posts what it is about to do: "4 contracts ready for Dana Okafor across Client Delivery and Internal Tools. Two would inherit video capture from the project defaults, two would take screenshots on an interval. Confirm the recording level for each, or approve as proposed." A named person answers, and their answer is what gets written. The same gate applies to Download Screenshot, which copies a capture of somebody's screen out of WebWork and into wherever the flow sends it next. The human-in-the-loop step here is not a rubber stamp on a routine write. It is the only place in the workflow where the decision belongs to somebody accountable for it.
Agent Capabilities
150 actionsWorkspaces
2- Get Workspaces Reads the workspaces this token can reach. Call it first: the id it returns is the value nearly every other operation wants.
- Get Workspace Returns one workspace with its settings.
Members
7- List Members Reads the workspace's members with their roles and status.
- Get Member Returns one member with their role, status and custom field values.
- Invite Member Invites somebody into the workspace with a role. Notification is on by default, so a silent import is a deliberate choice.
- Update Member Changes a member's name, email, role, time zone or weekly hours limit. Rate visibility here is a permission rather than a display preference.
- Activate Member Completes an invited member's sign up by setting their password on their behalf. It puts a credential on the wire and skips the invitation flow, so it belongs only in an automated onboarding where the credential is generated and delivered securely.
- Restore Member Brings an archived member back into the workspace with their access and their history.
- Archive Member Archives a member. Their tracked time and reports survive and Restore Member brings them back, which is why this is a soft removal rather than a deletion.
Projects
5- List Projects Reads the workspace's projects. WebWork filters by role automatically, so an empty result is often a permission result rather than an empty workspace.
- Get Project Returns one project with its dates, estimate, budget and custom field values.
- Create Project Creates a project. The name must be unique among active projects, and only owners and executive managers may call it.
- Update Project Changes a project's name, dates, estimate, budget or notes.
- Archive Project Archives a project. The project and its tracked time can be restored, and the name becomes available again.
Contracts
5- List Contracts Reads the project-to-member assignments, each carrying the hourly rate, weekly limit and recording mode for that pairing. Rate information only reaches a caller allowed to see rates.
- Get Contract Returns one contract, with its rate included only when the caller may see rates.
- Create Contract Assigns a member to a project, which is what lets them track time against it. It also sets what the desktop tracker records of that person's screen, which is why this operation carries the human gate on this page.
- Update Contract Changes a contract's weekly limit, recording mode, rate or status. Pausing the status stops tracking for that pairing without deleting the assignment or its history.
- Delete Contract Removes a member's assignment to a project. It is a soft delete, and the tracked time stays in reports.
Teams
7- List Teams Reads the workspace's teams, which WebWork also calls departments.
- Get Team Returns one team.
- Create Team Creates a team with a name unique in the workspace.
- Update Team Renames a team. A blank name is refused rather than accepted, so a team name cannot be erased by accident.
- Delete Team Deletes a team. Its members keep their workspace membership and simply stop belonging to a team.
- Assign Member To Team Adds a member to a team, and optionally promotes them to team manager for it.
- Unassign Member From Team Removes a member from a team.
Titles
7- List Titles Reads the workspace's titles, which group people by job role rather than by team.
- Get Title Returns one title.
- Create Title Creates a title with a name unique in the workspace.
- Update Title Renames a title.
- Delete Title Deletes a title. Members who held it keep their membership.
- Assign Member To Title Gives a member a title.
- Unassign Member From Title Removes a title from a member.
Project Groups
7- List Project Groups Reads the project groups that gather related projects together.
- Get Project Group Returns one project group.
- Create Project Group Creates a project group with a name unique in the workspace.
- Update Project Group Renames a project group.
- Delete Project Group Deletes a project group. The projects inside it survive and simply stop being grouped.
- Assign Project To Group Files a project into a project group.
- Unassign Project From Group Removes a project from a project group.
Project Viewers
7- List Project Viewers Reads the read-only guests, such as clients given sight of specific projects without a full seat.
- Get Project Viewer Returns one project viewer with the projects they can see.
- Create Project Viewer Invites a read-only viewer who sees only their assigned projects and cannot track time.
- Assign Project To Viewer Gives a viewer sight of one project. This widens what an outside party can see, so it is worth treating as an access change rather than a convenience.
- Unassign Project From Viewer Takes a project away from a viewer.
- Restore Project Viewer Brings a deleted viewer back with the projects they could see.
- Delete Project Viewer Removes a viewer's access, reversibly.
Tasks
8- List Tasks Reads a project's tasks, walking the hierarchy by parent.
- Get Task Returns one task.
- Create Task Creates a task in a project, optionally as a subtask and optionally assigning it in the same call. The hierarchy is only two levels deep.
- Update Task Changes a task, including promoting a subtask back to top level.
- Delete Task Deletes a task.
- List Task Assignees Reads who a task is assigned to.
- Assign Task Assigns a task to a member.
- Unassign Task Removes a member's assignment from a task.
Task Statuses
5- List Task Statuses Reads the available task statuses, falling back to workspace defaults when a project has no override.
- Get Task Status Returns one task status.
- Create Task Status Creates a custom status. Creating one on a project forks the workspace defaults into a project override.
- Update Task Status Renames or recolors a task status.
- Delete Task Status Deletes a status and names where the affected tasks move to, so no task is left pointing at a status that no longer exists.
Task Comments
5- List Task Comments Reads the comments on a task, including replies.
- Get Task Comment Returns one comment.
- Create Task Comment Adds a comment to a task, or a reply to an existing one.
- Update Task Comment Edits a comment on a task.
- Delete Task Comment Deletes a comment from a task.
The Live Tracker
3- Start Tracking Starts the time tracker for a member against a project and task.
- Stop Tracking Stops the time tracker for a member. It is refused when no session is running.
- Get Current Tracking Data Returns what a member's tracker is doing right now. Call it before starting or stopping, because both refuse when the member is already in the state being asked for.
Time Entries
5- List Time Entries Reads one person's time entries for one day, which is the granularity WebWork requires on this route.
- Get Time Entry Returns one time entry.
- Create Time Entry Records a block of time manually, with a date and clock times rather than timestamps.
- Update Time Entry Changes a time entry's times, date, project, task or notes.
- Delete Time Entry Permanently deletes a time entry.
Screenshots
3- List Screenshots Reads the screen captures the desktop tracker recorded, filterable by member, project, task and date range. These are monitoring records of people's screens.
- Get Screenshot Returns one screenshot's metadata: when it was taken, by whom and against what.
- Download Screenshot Copies a screenshot into FlowRunner file storage and returns a URL. It moves a monitoring capture out of WebWork, so the destination has to be somewhere allowed to hold it.
Reports
10- Get Tracked Hours Report Returns tracked hours across the workspace, filterable by member, project, team and title. With no dates it covers the current week.
- Get Daily Timeline Report Returns every time entry on one day laid out as a timeline per member.
- Get Daily Activity Report Returns one member's day broken down by the dimensions the call names, down to minute granularity.
- Get Activity Level Report Returns the activity percentage WebWork computed for each member across a range. It is a keyboard and mouse measure, which makes it an input to a conversation rather than a verdict about somebody's work.
- Get Task Report Returns tracked time grouped by task across a date range.
- Get Daily Attendance Report Returns who was late, left early, tracked under their expected hours, was absent or was on leave. The read an attendance exception flow starts from.
- Get Activity Description Report Returns tracked time grouped by the activity descriptions members typed.
- Get Apps And Websites Report Returns which applications and websites members used and for how long, classified as productive, neutral or non productive. This is application monitoring data about identified people.
- Get Real Time Report Returns who is working right now with their project, task, tracker type and live status. The single call behind a live dashboard.
- Get GPS Tracking Report Returns the location points the mobile tracker recorded, over a range of at most 31 days. Like the screenshot routes, this is data about identified individuals.
Timesheets
6- List Timesheets Reads the workspace's timesheets with their approval status.
- Get Timesheet Returns one timesheet with its entries and approval state.
- Submit Timesheet Submits a timesheet for approval.
- Unsubmit Timesheet Withdraws a submitted timesheet so it can be corrected before approval.
- Approve Timesheet Approves a submitted timesheet. WebWork's admin scope is usually what an approval token needs.
- Reject Timesheet Rejects a submitted timesheet with a reason, which WebWork shows to the member. Because the employee reads it, a person should write it.
Time Requests
5- List Time Requests Reads requests to add time retrospectively, with their status.
- Get Time Request Returns one time request.
- Create Time Request Raises a request to add time retrospectively for a member.
- Approve Time Request Approves a time request, which adds the time to the member's timeline.
- Reject Time Request Rejects a time request with the comment WebWork requires.
Leave
7- List Leave Requests Reads leave requests with their status and policy.
- Get Leave Request Returns one leave request.
- Create Leave Request Raises a leave request for a member against a policy.
- Approve Leave Request Approves a leave request, which books the leave against the member's balance.
- Reject Leave Request Rejects a leave request, returning the days to the member's balance.
- List Leave Policies Reads the workspace's leave policies. Run it before creating a request, because the policy decides the shape the request must take.
- Get Leave Balances Reads how much leave each member has taken and has left over a period.
Job Sites
5- List Job Sites Reads the geofenced job sites the mobile tracker checks members against.
- Get Job Site Returns one job site with its center, radius and member assignments.
- Create Job Site Creates a geofenced site. The coordinates define it rather than the address, which is stored as free text and never geocoded.
- Update Job Site Changes a job site's name, position, radius or assignments. The member list is replaced rather than added to.
- Delete Job Site Deletes a job site. The GPS points already recorded stay, they simply stop being attributed to a site.
Shifts
7- List Shifts Reads the workspace's shifts, by ISO week or by an explicit range.
- Get Shift Returns one shift with its schedule and assigned members.
- Create Shift Creates a work shift, either fixed with start and end times or flexible with a per-weekday schedule.
- Update Shift Changes a shift. The member list is replaced rather than added to, so a partial update needs the full roster.
- Assign Member To Shift Adds one member to a shift without disturbing the others already on it.
- Unassign Member From Shift Removes one member from a shift.
- Delete Shift Deletes a shift. The members keep their membership and simply stop being scheduled.
Assets
8- List Assets Reads the workspace's tracked hardware, separating available kit from kit already issued.
- Get Asset Returns one asset with its type, assignment and custom field values.
- Create Asset Records a hardware asset, optionally issuing it to a member in the same call.
- Update Asset Changes an asset's details. Its category is fixed at creation.
- Assign Asset Hands an asset to a member, which is the write an onboarding run makes for a laptop or a phone.
- Unassign Asset Takes an asset back, returning it to the available pool.
- Restore Asset Brings a soft-deleted asset back into the register.
- Delete Asset Soft-deletes an asset, reversibly.
Asset Types
5- List Asset Types Reads the asset types defined in the workspace, which subdivide a hardware category.
- Get Asset Type Returns one asset type.
- Create Asset Type Creates an asset type inside a hardware category.
- Update Asset Type Renames an asset type.
- Delete Asset Type Deletes an asset type. Assets that used it keep their category.
Custom Fields
5- List Custom Fields Reads the custom fields defined for projects, tasks or members. Read it before writing values, because each field's id identifies which field a value belongs to.
- Get Custom Field Returns one custom field definition.
- Create Custom Field Defines a custom field. Its type and target are fixed at creation, so getting them wrong means starting again.
- Update Custom Field Renames a custom field or changes its dropdown options.
- Delete Custom Field Deletes a custom field definition and every value stored under it.
Asset Custom Fields
5- List Asset Custom Fields Reads the custom fields defined for assets, which are a separate set from the project, task and member fields.
- Get Asset Custom Field Returns one asset custom field definition.
- Create Asset Custom Field Defines a custom field for assets, optionally scoped to one hardware category.
- Update Asset Custom Field Renames an asset custom field or changes its options, category scope or position.
- Delete Asset Custom Field Deletes an asset custom field definition and every value stored under it.
Expenses
6- List Expenses Reads the workspace's expenses.
- Get Expense Returns one expense.
- Create Expense Records an expense against the workspace.
- Update Expense Changes an expense's amount, category, description or date.
- Delete Expense Deletes an expense.
- List Expense Categories Reads the expense categories defined in the workspace.
Webhooks
5- List Webhooks Reads the workspace's webhooks, including the ones FlowRunner triggers created.
- Get Webhook Returns one webhook with its URL and subscribed events.
- Create Webhook Registers a webhook for delivery to a system other than FlowRunner. For a flow, the trigger below manages its own.
- Update Webhook Changes a webhook's URL or its event list, which is replaced rather than added to.
- Delete Webhook Removes a webhook and stops its deliveries.
Triggers
1 triggersEvent Triggers
1- On WebWork Event Fires when WebWork reports the chosen workspace event, or every event the workspace emits. It is what turns a monitoring platform into something a flow can react to in the moment: a timesheet submitted, a leave request raised, a tracker started. The notification event is scoped to the token's own user rather than to the workspace, which is worth knowing before a flow treats it as a workspace-wide feed.
Frequently Asked Questions
What can FlowRunner do with WebWork Time Tracker?
FlowRunner agents can run Get Workspaces, Get Workspace, and List Members in WebWork Time Tracker, plus 147 more actions.
Does connecting WebWork Time Tracker to FlowRunner require OAuth?
No. WebWork Time Tracker connects to FlowRunner with an API key, no OAuth flow required.
Can WebWork Time Tracker trigger a FlowRunner workflow automatically?
Yes. WebWork Time Tracker supports 1 trigger that can start a FlowRunner workflow automatically.
Start building with WebWork Time Tracker
Free plan, no card required. Connect in minutes.