Projects · Timeglass API
Manage projects, their teams, clients, budgets, and lifecycle.
List Projects
GET /v1/projects
Query parameters
limit· integercursor· stringclient_id· string · uuidteam_id· string · uuid · The team’s projects plus workspace-wide projects, which every team can use.include_workspace_wide· string · false leaves out workspace-wide projects. · One of:true,falsestatus· anyexternal_id· string · Matched ignoring case.
Response 200
data· array of object · requiredproject_id· string · uuid · requiredtitle· string · requireddescription· string,null · requiredstatus· any · requiredteam_id· string · uuid · nullable · requiredclient_id· string · uuid · nullable · requiredcategory_id· string · uuid · nullable · requiredexternal_id· string,null · required · Your own id for this record, such as its id in the tool you sync from. Unique in the workspace.target_minutes· number,null · requiredtotal_minutes· number · requiredfirst_active_date· string,null · requiredlast_active_date· string,null · requiredcreated_at· string · timestamp · required
next_cursor· string,null · required
curl "https://api.timeglass.ai/v1/projects" \
-H "Authorization: Bearer $TIMEGLASS_API_KEY"
Create a Project
POST /v1/projects
Requires a key with the read_write scope.
Request body
title· string · requiredteam_id· string · uuid · nullable · requireddescription· string,nullclient_id· string · uuidtarget_minutes· integerstatus· string · One of:active,inactive,completed,draftexternal_id· string · Your own id for this record, such as its id in the tool you sync from. Unique in the workspace.
Response 201
project· object · requiredproject_id· string · uuid · requiredtitle· string · requireddescription· string,null · requiredstatus· any · requiredteam_id· string · uuid · nullable · requiredclient_id· string · uuid · nullable · requiredcategory_id· string · uuid · nullable · requiredexternal_id· string,null · required · Your own id for this record, such as its id in the tool you sync from. Unique in the workspace.target_minutes· number,null · requiredtotal_minutes· number · requiredfirst_active_date· string,null · requiredlast_active_date· string,null · requiredcreated_at· string · timestamp · required
curl -X POST "https://api.timeglass.ai/v1/projects" \
-H "Authorization: Bearer $TIMEGLASS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"title": "Aviation account expansion",
"team_id": "4bfe4a4b-c86b-4b8e-b3f5-3d1c4a2e9f10"
}'
Get a Project
GET /v1/projects/{projectId}
Path parameters
projectId· string · uuid · required
Response 200
project_id· string · uuid · requiredtitle· string · requireddescription· string,null · requiredstatus· any · requiredteam_id· string · uuid · nullable · requiredclient_id· string · uuid · nullable · requiredcategory_id· string · uuid · nullable · requiredexternal_id· string,null · required · Your own id for this record, such as its id in the tool you sync from. Unique in the workspace.target_minutes· number,null · requiredtotal_minutes· number · requiredfirst_active_date· string,null · requiredlast_active_date· string,null · requiredcreated_at· string · timestamp · required
curl "https://api.timeglass.ai/v1/projects/4bfe4a4b-c86b-4b8e-b3f5-3d1c4a2e9f10" \
-H "Authorization: Bearer $TIMEGLASS_API_KEY"
Update a Project
PATCH /v1/projects/{projectId}
Requires a key with the read_write scope.
Path parameters
projectId· string · uuid · required
Request body
title· stringdescription· string,nullstatus· string · One of:active,inactive,completed,draftteam_id· string · uuid · nullableclient_id· string · uuid · nullabletarget_minutes· integerexternal_id· string · nullable · Your own id for this record, such as its id in the tool you sync from. Unique in the workspace.
Response 200
project· object · requiredproject_id· string · uuid · requiredtitle· string · requireddescription· string,null · requiredstatus· any · requiredteam_id· string · uuid · nullable · requiredclient_id· string · uuid · nullable · requiredcategory_id· string · uuid · nullable · requiredexternal_id· string,null · required · Your own id for this record, such as its id in the tool you sync from. Unique in the workspace.target_minutes· number,null · requiredtotal_minutes· number · requiredfirst_active_date· string,null · requiredlast_active_date· string,null · requiredcreated_at· string · timestamp · required
curl -X PATCH "https://api.timeglass.ai/v1/projects/4bfe4a4b-c86b-4b8e-b3f5-3d1c4a2e9f10" \
-H "Authorization: Bearer $TIMEGLASS_API_KEY" \
-H "Content-Type: application/json" \
-d '{}'
Delete a Project
DELETE /v1/projects/{projectId}
Requires a key with the read_write scope.
Path parameters
projectId· string · uuid · required
curl -X DELETE "https://api.timeglass.ai/v1/projects/4bfe4a4b-c86b-4b8e-b3f5-3d1c4a2e9f10" \
-H "Authorization: Bearer $TIMEGLASS_API_KEY"