Developer docs
Flatgrin API
Build automations, syncs, and internal tools against the Flatgrin REST API. All endpoints return JSON over HTTPS.
Base URL
All paths below are relative to this base URL.
Authentication
Authenticate with a Bearer token issued from your workspace settings under Settings → API. Pass the token in the Authorization header on every request.
Rate limits
| Plan | Requests / minute | Burst |
|---|---|---|
| Starter | 60 | 100 |
| Growth | 180 | 300 |
| Enterprise | Custom | Custom |
Responses include X-RateLimit-Remaining and X-RateLimit-Reset headers. Exceeding limits returns HTTP 429.
Endpoints
/tasks
List tasks in the workspace. Filter by project, assignee, or status.
Example response
/tasks/:id
Retrieve a single task by ID, including description and linked resources.
Example response
/tasks
Create a task. Required fields: title and project_id.
Example response
/projects
List projects with progress summaries for reporting dashboards.
Example response
/tasks/:id/comments
Add a comment to a task. Mentions use the form @user_id.
Example response
Errors
Errors return a consistent JSON body:
SDKs & libraries
Official and community libraries help you integrate faster. Install from your package manager and pass the same API key used with curl.
Node.js / TypeScript
npm package @flatgrin/sdk for server and edge runtimes.
Python
PyPI package flatgrin with async and sync clients.
Go
Module for backend services and CLI tooling.
Webhooks
Subscribe to task.created, task.updated, and project.completed events from workspace settings.
Need higher limits or private endpoints?
Enterprise customers can request dedicated rate tiers and sandbox workspaces.
Contact us