Overview
The TrackingTime Public API allows developers to integrate TrackingTime's time tracking features and account data into their own applications and workflows. The API enables programmatic access to time entries, projects, tasks, users, and reporting data.
API Capabilities
Core Features
- Manage time entries (create, read, update, delete)
- Access project and task data
- Retrieve user information and permissions
- Generate reports programmatically
- Manage clients and tags
- Access team data and settings
Authentication
- OAuth 2.0 authentication flow
- Personal access tokens
- Account-level API keys
- Scoped permissions
API Documentation
Comprehensive documentation available at https://developers.trackingtime.co includes:
- Complete endpoint reference
- Authentication guides
- Request/response examples
- Error code documentation
- Rate limiting information
- Best practices
Main Endpoints
Time Entries
- GET /api/v4/time-entries
- POST /api/v4/time-entries
- PUT /api/v4/time-entries/
- DELETE /api/v4/time-entries/
- POST /api/v4/time-entries/start
- POST /api/v4/time-entries/stop
Projects & Tasks
- GET /api/v4/projects
- POST /api/v4/projects
- GET /api/v4/projects//tasks
- POST /api/v4/tasks
Users & Teams
- GET /api/v4/users
- GET /api/v4/teams
- GET /api/v4/teams//members
Reports
- GET /api/v4/reports/summary
- GET /api/v4/reports/detailed
- GET /api/v4/reports/projects
- GET /api/v4/reports/users
Clients
- GET /api/v4/clients
- POST /api/v4/clients
- PUT /api/v4/clients/
Integration Examples
Common Use Cases
- Sync with Project Management Tools: Keep time data synchronized with tools like Asana, Jira, Monday.com
- Automated Invoicing: Generate invoices based on tracked time
- Custom Dashboards: Build specialized reporting interfaces
- Payroll Integration: Export timesheet data to payroll systems
- Time Tracking Automation: Auto-start timers based on external triggers
Third-Party Integrations
TrackingTime's API powers integrations with:
- Zapier (5,000+ app connections)
- Make (workflow automation)
- Custom internal tools
- Mobile applications
- Browser extensions
Webhook Support
Real-time notifications for events:
- Time entry created
- Time entry updated
- Time entry deleted
- Timer started
- Timer stopped
- Project status changes
Response Format
JSON formatted responses:
{
"data": {
"id": "entry_123",
"project_id": "proj_456",
"task_id": "task_789",
"start_time": "2026-03-16T09:00:00Z",
"end_time": "2026-03-16T10:30:00Z",
"duration": 5400,
"billable": true
}
}
Rate Limiting
- Rate limits apply based on subscription tier
- Headers indicate remaining requests
- Automatic throttling for burst requests
- Contact support for higher limits
SDK & Libraries
Community and official libraries:
- JavaScript/TypeScript
- Python
- PHP
- Ruby
- .NET
Error Handling
Standard HTTP status codes:
- 200: Success
- 201: Created
- 400: Bad Request
- 401: Unauthorized
- 403: Forbidden
- 404: Not Found
- 429: Too Many Requests
- 500: Server Error
Detailed error messages in response body.
Security
- HTTPS required for all API calls
- OAuth 2.0 secure authentication
- Token expiration and refresh
- IP whitelisting available
- Audit logs for API activity
API Versioning
- Current version: v4
- Version specified in URL path
- Backwards compatibility maintained
- Deprecation notices provided in advance
- Migration guides for version updates
Support Resources
- Developer documentation portal
- API status page
- Community forum
- Email support for API issues
- Enterprise dedicated support