Skip to content

Quickstart

This page documents the legacy API v0. New integrations should use API v1.

Create a token, call the API, retrieve users, create projects and tasks, and start tracking time.

This quickstart shows the shortest path from a new API token to a working TeamGrid integration.

Open TeamGrid and go to:

Team settings -> Developer -> API tokens

Create a token for the team you want to integrate. Store the token securely. TeamGrid does not require a separate team id in API requests because the token already identifies the team.

Send the token in the Authorization header:

Terminal window
curl https://api.teamgrid.app/teams \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"

A successful GET /teams response returns the team associated with the token.

Users are often needed before assigning tasks or creating time entries. Use GET /users to list users in the token team.

Terminal window
curl https://api.teamgrid.app/users \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"

You can filter by email address:

Terminal window
curl "https://api.teamgrid.app/[email protected]" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"

Use POST /projects to create a project.

Terminal window
curl https://api.teamgrid.app/projects \
-X POST \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"name": "Website relaunch",
"description": "Implementation project for the new website."
}'

Use the project id returned by the project request, then create the task with POST /tasks.

Terminal window
curl https://api.teamgrid.app/tasks \
-X POST \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"name": "Prepare launch checklist",
"projectId": "PROJECT_ID",
"plannedTime": 120
}'

plannedTime is expressed in minutes.

Use Start task time tracking to start tracking with POST /tasks/{_id}/startTracking. Use Stop task time tracking to stop tracking with POST /tasks/{_id}/stopTracking.

Terminal window
curl https://api.teamgrid.app/tasks/TASK_ID/startTracking \
-X POST \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"userId": "USER_ID",
"time": "2026-07-01T09:00:00Z"
}'
Terminal window
curl https://api.teamgrid.app/tasks/TASK_ID/stopTracking \
-X POST \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"userId": "USER_ID",
"time": "2026-07-01T10:15:00Z"
}'

Read the guides on authentication, pagination, date handling, errors, webhooks, OpenAPI tooling, and recipes before using the API in production.