Modern REST API for WebWork Tracker with OAuth2 authentication. This API provides access to workspaces, members, projects, and time tracking features.
WebWork Tracker REST API V2 (2.0.0)
Contracts
Manage contracts (project-member assignments) within workspaces. Contracts define which members are assigned to which projects, with settings for rates, hours limits, and screenshot modes. Rate information is only visible if you have permission to view rates and the project is billable.
ID of the user to start tracking for. Must be a member of the specified workspace.
Optional contract ID (project-member assignment). If provided, the time will be tracked for the associated project. If not provided, time will be tracked without a project assignment.
Optional task ID. Can only be provided if contract_id is also provided. The task must belong to the project associated with the contract.
- Production Serverhttps://api.webwork-tracker.com/api/v2/time-tracking/start
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X POST \
https://api.webwork-tracker.com/api/v2/time-tracking/start \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"workspace_id": 1,
"user_id": 100,
"contract_id": 20,
"task_id": 5,
"activity_description": "Implementing new feature"
}'{ "success": true, "data": { "message": "Time tracking started successfully", "start_time": "2024-01-15T10:30:00+00:00", "contract_id": 20, "project_id": 10, "task_id": 5, "activity_description": "Working on feature implementation" }, "message": "Time tracking started successfully", "meta": { "api_version": "2.0.0", "timestamp": "2024-01-15T10:30:00Z" } }
- Production Serverhttps://api.webwork-tracker.com/api/v2/time-tracking/stop
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X POST \
https://api.webwork-tracker.com/api/v2/time-tracking/stop \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"workspace_id": 1,
"user_id": 100
}'{ "success": true, "data": { "message": "Time tracking stopped successfully", "stopped_at": "2024-01-15T12:30:00+00:00" }, "message": "Time tracking stopped successfully", "meta": { "api_version": "2.0.0", "timestamp": "2024-01-15T12:30:00Z" } }
Request
Get current running tracker actual time data for a user. Only workspace owners and executive managers can use this endpoint. They can get tracker data for any member in their workspace. Important: This endpoint only works when the tracker is running from the API or from the browser. In other cases, it will not retrieve current tracking information.
- Production Serverhttps://api.webwork-tracker.com/api/v2/time-tracking/current-data
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X GET \
'https://api.webwork-tracker.com/api/v2/time-tracking/current-data?workspace_id=1&user_id=100' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'Current tracker data retrieved successfully
Current tracker data including total time tracked. The total_minutes field combines minutes from Timeline entries for the date with minutes from the current running tracker. The total_seconds field represents the remainder seconds from the current tracker.
{ "success": true, "data": { "contract_id": 598672, "user_id": 45696, "activity_description": "Working on API documentation", "task_id": 3917798, "task_title": "Adding timesheets", "total_seconds": 9, "total_minutes": 7, "date": "2025-12-08" }, "message": "Current tracker data retrieved successfully", "meta": { "api_version": "2.0.0", "timestamp": "2025-12-08T11:30:39.529297Z" } }