TimeTracker can import Linear issues as tasks using a Personal API key and the public GraphQL API (Linear API docs).
Linear is not OAuth in this connector: you create a Personal API Key in Linear (Settings β API) and paste it into TimeTracker when you connect the integration. The key is stored like other integration credentials.
- Issues are fetched from Linear (paginated) and upserted as tasks under per-team projects (created or matched by integration metadata).
- Task name:
IDENTIFIER: title(e.g.ENG-42: Fix login). - Description: issue URL (when available).
- Status: mapped to
donewhen the Linear workflow state name is done/completed/canceled (case-insensitive); otherwisetodo.
Optional JSON custom_fields on tasks stores integration metadata (e.g. Linear identifier and URL) for matching on later syncs.
| Field | Purpose |
|---|---|
| API key | Linear personal API key |
| Team keys (optional) | Comma-separated team keys (e.g. ENG,MOB). If empty, issues from all accessible teams are considered (subject to API visibility). |
| Automatic sync | When enabled, runs on the integration schedule like other connectors. |
Use Test connection to verify the key; use Sync now for a manual import.
- Sync walks up to a bounded number of GraphQL pages per run to avoid runaway imports.
- The TimeTracker server must reach
https://api.linear.app. - Webhooks are not required; sync is pull-based from Linear.