Agent skill
time-tracking-2-toggl-track-projects-and-clients
Sub-skill of time-tracking: 2. Toggl Track - Projects and Clients.
Install this agent skill to your Project
npx add-skill https://github.com/vamseeachanta/workspace-hub/tree/main/.claude/skills/_archive/business/productivity/time-tracking/2-toggl-track-projects-and-clients
SKILL.md
2. Toggl Track - Projects and Clients
2. Toggl Track - Projects and Clients
REST API - Projects:
# Get workspace projects
curl -s -u "$TOGGL_API_TOKEN:api_token" \
"https://api.track.toggl.com/api/v9/workspaces/WORKSPACE_ID/projects" | jq
# Create project
curl -s -X POST -u "$TOGGL_API_TOKEN:api_token" \
-H "Content-Type: application/json" \
"https://api.track.toggl.com/api/v9/workspaces/WORKSPACE_ID/projects" \
-d '{
"name": "Client Website Redesign",
"color": "#0b83d9",
"is_private": false,
"active": true,
"client_id": CLIENT_ID,
"billable": true,
"estimated_hours": 100
}' | jq
# Get clients
curl -s -u "$TOGGL_API_TOKEN:api_token" \
"https://api.track.toggl.com/api/v9/workspaces/WORKSPACE_ID/clients" | jq
# Create client
curl -s -X POST -u "$TOGGL_API_TOKEN:api_token" \
-H "Content-Type: application/json" \
"https://api.track.toggl.com/api/v9/workspaces/WORKSPACE_ID/clients" \
-d '{
"name": "Acme Corporation",
"notes": "Primary contact: John Doe"
}' | jq
# Get tags
curl -s -u "$TOGGL_API_TOKEN:api_token" \
"https://api.track.toggl.com/api/v9/workspaces/WORKSPACE_ID/tags" | jq
# Create tag
curl -s -X POST -u "$TOGGL_API_TOKEN:api_token" \
-H "Content-Type: application/json" \
"https://api.track.toggl.com/api/v9/workspaces/WORKSPACE_ID/tags" \
-d '{"name": "urgent"}' | jq
Python - Projects and Clients:
def get_projects(self, workspace_id):
"""Get all projects in workspace."""
return self._request("GET", f"/workspaces/{workspace_id}/projects")
def create_project(
self,
workspace_id,
name,
client_id=None,
color="#0b83d9",
billable=False,
estimated_hours=None
):
"""Create a new project."""
data = {
"name": name,
"color": color,
"billable": billable,
"active": True
}
if client_id:
data["client_id"] = client_id
if estimated_hours:
data["estimated_hours"] = estimated_hours
return self._request(
"POST",
f"/workspaces/{workspace_id}/projects",
data
)
def get_clients(self, workspace_id):
"""Get all clients in workspace."""
return self._request("GET", f"/workspaces/{workspace_id}/clients")
def create_client(self, workspace_id, name, notes=None):
"""Create a new client."""
data = {"name": name}
if notes:
data["notes"] = notes
return self._request(
"POST",
f"/workspaces/{workspace_id}/clients",
data
)
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
gsd-complete-milestone
Archive completed milestone and prepare for next version
gsd-reapply-patches
Reapply local modifications after a GSD update
gsd-verify-work
Validate built features through conversational UAT
gsd-thread
Manage persistent context threads for cross-session work
clinical-trial-protocol
Generate clinical trial protocols for medical devices or drugs through a modular, waypoint-based architecture with research-only and full protocol modes.
single-cell-rna-qc
Performs quality control on single-cell RNA-seq data (.h5ad or .h5 files) using scverse best practices with MAD-based filtering and comprehensive visualizations.
Didn't find tool you were looking for?