Modern REST API for WebWork Time Tracker with OAuth2 authentication. This API provides access to workspaces, members, projects, and time tracking features.
- Create New Contract
WebWork Time Tracker API V2 Documentation (2.0.0)
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.
Request
Retrieve all contracts (project-member assignments) in your workspace. Contracts are automatically filtered based on your role and permissions: Role-based access: Owners and Executive Managers see all contracts; Project Managers see contracts for managed projects + their own contracts; Team Managers see contracts for managed teams + their own contracts; Regular Users see only their own contracts; Clients see only contracts for projects they have access to. Rate information is only visible if you have permission to view rates AND the project is billable. You can apply additional filters (project_id, user_id, status) to narrow down results.
- Production Serverhttps://api.webwork-tracker.com/api/v2/contracts
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X GET \
'https://api.webwork-tracker.com/api/v2/contracts?workspace_id=1' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'{ "success": true, "message": "Contracts retrieved successfully", "data": [ { … } ], "meta": { "api_version": "2.0.0", "timestamp": "2019-08-24T14:15:22Z" }, "pagination": { "current_page": 1, "per_page": 20, "total": 50, "last_page": 3 } }
Request
Create a new contract (assign a member to a project) in your workspace. This endpoint is only accessible to Owners and Executive Managers. Rate information will only be saved if you have permission to view rates.
Screenshot mode
- Production Serverhttps://api.webwork-tracker.com/api/v2/contracts
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X POST \
'https://api.webwork-tracker.com/api/v2/contracts?workspace_id=1' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"project_id": 100,
"user_id": 100,
"weekly_hours_limit": 40,
"screenshots": "full",
"rate": 50
}'{ "success": true, "message": "Contract created successfully", "data": { "id": 100, "project_id": 100, "project_name": "Marketing Campaign Q1", "project_icon": "project-icon-1", "user_id": 100, "user_firstname": "John", "user_lastname": "Doe", "user_email": "john.doe@example.com", "user_role": "Regular User", "weekly_hours_limit": 40, "screenshots": "full", "screenshots_label": "Screenshot on", "rate": 50, "rate_type": 1, "status": "active", "currency": "USD", "created_at": "2024-01-15T09:00:00Z", "updated_at": "2024-01-15T09:00:00Z" }, "meta": { "api_version": "2.0.0", "timestamp": "2019-08-24T14:15:22Z" } }
- Production Serverhttps://api.webwork-tracker.com/api/v2/contracts/{contractId}
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X GET \
'https://api.webwork-tracker.com/api/v2/contracts/100?workspace_id=1' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'{ "success": true, "message": "Contract retrieved successfully", "data": { "id": 100, "project_id": 100, "project_name": "Marketing Campaign Q1", "project_icon": "project-icon-1", "user_id": 100, "user_firstname": "John", "user_lastname": "Doe", "user_email": "john.doe@example.com", "user_role": "Regular User", "weekly_hours_limit": 40, "screenshots": "full", "screenshots_label": "Screenshot on", "rate": 50, "rate_type": 1, "status": "active", "currency": "USD", "created_at": "2024-01-15T09:00:00Z", "updated_at": "2024-01-15T09:00:00Z" }, "meta": { "api_version": "2.0.0", "timestamp": "2019-08-24T14:15:22Z" } }
Request
Update an existing contract in your workspace. This endpoint is only accessible to Owners and Executive Managers. Rate information will only be updated if you have permission to view rates.
Screenshot mode
- Production Serverhttps://api.webwork-tracker.com/api/v2/contracts/{contractId}
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X PUT \
'https://api.webwork-tracker.com/api/v2/contracts/100?workspace_id=1' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"weekly_hours_limit": 40,
"screenshots": "blurred",
"rate": 55,
"status": "active"
}'{ "success": true, "message": "Contract retrieved successfully", "data": { "id": 100, "project_id": 100, "project_name": "Marketing Campaign Q1", "project_icon": "project-icon-1", "user_id": 100, "user_firstname": "John", "user_lastname": "Doe", "user_email": "john.doe@example.com", "user_role": "Regular User", "weekly_hours_limit": 40, "screenshots": "full", "screenshots_label": "Screenshot on", "rate": 50, "rate_type": 1, "status": "active", "currency": "USD", "created_at": "2024-01-15T09:00:00Z", "updated_at": "2024-01-15T09:00:00Z" }, "meta": { "api_version": "2.0.0", "timestamp": "2019-08-24T14:15:22Z" } }
- Production Serverhttps://api.webwork-tracker.com/api/v2/contracts/{contractId}
- cURL
- JS
- Python
- PHP
- Go
- Java 8
- C#
- C++
curl -i -X DELETE \
'https://api.webwork-tracker.com/api/v2/contracts/100?workspace_id=1' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>'{ "success": true, "message": "Contract deleted successfully", "data": null, "meta": { "api_version": "2.0.0", "timestamp": "2019-08-24T14:15:22Z" } }