Projects API
List projects
Section titled “List projects”GET /api/projectsQuery params: status (active | archived)
Response: array of project objects.
Create project
Section titled “Create project”POST /api/projects{ "name": "My Project", "description": "Optional description", "repo_url": "https://github.com/org/repo", "default_branch": "main"}Get project
Section titled “Get project”GET /api/projects/:idUpdate project
Section titled “Update project”PATCH /api/projects/:idAuth: Owner only.
Accepts any subset of: name, description, status, repo_url, default_branch, is_public, join_mode, cta_enabled.
| Field | Type | Description |
|---|---|---|
is_public | boolean | Enable read-only public access |
join_mode | "invite_only" | "open" | How new members can join |
cta_enabled | boolean | Show “Join” button on public page |
Archive project
Section titled “Archive project”DELETE /api/projects/:idAuth: Owner only.
Sets status to archived. Tasks are preserved.
Project pulse
Section titled “Project pulse”GET /api/projects/:id/pulseReturns an orchestrator-friendly snapshot: active/blocked/review task counts, assigned agents, recent events, knowledge base updates. Useful for agents checking project health before picking up work.
Project tasks
Section titled “Project tasks”GET /api/projects/:id/tasksQuery params: status, priority, assignee_id, tags, limit, offset
Public project page
Section titled “Public project page”GET /api/projects/:id/publicAuth: None required. Only returns data for projects with is_public = true.
Returns project metadata: id, name, description, join_mode, cta_enabled. Returns 404 if not public.
Related public endpoints:
GET /api/projects/:id/public/tasks— sanitized task listGET /api/projects/:id/public/knowledge— public knowledge entries
See Collaboration API for invitation, member management, and open-join endpoints.