Projects
Create, list, and manage projects. Get project details, stats, and task summaries.
REST API — All endpoints require authentication via Bearer token. IncludeAuthorization: Bearer {token}in every request. Tokens are managed in GitScrum Settings → API. Base URL:https://services.gitscrum.com— All request paths in this documentation are relative to this base URL.
Projects organize tasks, sprints, and team members within a workspace.
List projects
GET /projects?company_slug={slug}
Returns a paginated list of projects in a workspace.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
company_slug | string | Yes | Workspace identifier |
status | string | No | Filter: in_progress, completed, archived |
curl -X GET "https://services.gitscrum.com/projects?company_slug=acme-corp" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json"Response 200 OK
{
"data": [
{
"slug": "web-platform",
"name": "Web Platform",
"description": "Main product application",
"logo": "https://cdn.gitscrum.com/projects/web.png",
"visibility": "public",
"is_private": false,
"recurring": false,
"owner": {
"name": "Jane Smith",
"username": "janesmith"
},
"created_at": "2025-06-15T09:00:00Z"
}
]
}Find project by name
GET /projects?company_slug={slug}&name={name}
Search projects by name within a workspace.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
company_slug | string | Yes | Workspace identifier |
name | string | Yes | Project name to search for |
curl -X GET "https://services.gitscrum.com/projects?company_slug=acme-corp&name=Web%20Platform" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json"Get project
GET /projects/{slug}?company_slug={slug}
Returns full project details.
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | Project identifier |
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
company_slug | string | Yes | Workspace identifier |
curl -X GET "https://services.gitscrum.com/projects/web-platform?company_slug=acme-corp" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json"Response 200 OK
{
"data": {
"slug": "web-platform",
"name": "Web Platform",
"description": "Main product application",
"logo": "https://cdn.gitscrum.com/projects/web.png",
"visibility": "public",
"is_private": false,
"recurring": false,
"owner": {
"name": "Jane Smith",
"username": "janesmith"
},
"settings": {
"default_workflow": "backlog",
"task_prefix": "WEB"
},
"stats": {
"tasks_count": 156,
"completed_count": 98,
"members_count": 8
},
"created_at": "2025-06-15T09:00:00Z"
}
}Create project
POST /projects
Creates a new project in a workspace.
Request body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Project name |
company_slug | string | Yes | Workspace identifier |
description | string | No | Project description |
visibility | string | No | public (default) or private |
client_uuid | string | No | Associate with a client |
curl -X POST https://services.gitscrum.com/projects \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"name": "Mobile App",
"company_slug": "acme-corp",
"description": "iOS and Android application",
"visibility": "private"
}'Response 201 Created
{
"data": {
"slug": "mobile-app",
"name": "Mobile App",
"description": "iOS and Android application",
"visibility": "private",
"is_private": true,
"created_at": "2026-02-07T10:00:00Z"
}
}Project stats
GET /projects/{slug}/stats?company_slug={slug}
Returns project statistics.
curl -X GET "https://services.gitscrum.com/projects/web-platform/stats?company_slug=acme-corp" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json"Response 200 OK
{
"data": {
"tasks_count": 156,
"completed_count": 98,
"open_count": 58,
"members_count": 8,
"sprints_count": 6,
"labels_count": 12
}
}Update project
PUT /projects/{slug}
Updates an existing project.
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | Project identifier |
Request body
| Field | Type | Required | Description |
|---|---|---|---|
company_slug | string | Yes | Workspace identifier |
name | string | No | Project name |
description | string | No | Project description |
visibility | string | No | public or private |
curl -X PUT "https://services.gitscrum.com/projects/web-platform" \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"company_slug": "acme-corp",
"name": "Web Platform v2",
"description": "Main product application - redesigned"
}'Delete project
DELETE /projects/{slug}?company_slug={slug}
Permanently deletes a project and all its data. This action cannot be undone.
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | Project identifier |
curl -X DELETE "https://services.gitscrum.com/projects/web-platform?company_slug=acme-corp" \
-H "Authorization: Bearer {token}"Duplicate project
POST /projects/{slug}/duplicate?company_slug={slug}
Creates a copy of the project structure including workflows and settings.
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | Source project identifier |
curl -X POST "https://services.gitscrum.com/projects/web-platform/duplicate?company_slug=acme-corp" \
-H "Authorization: Bearer {token}"Field reference
| Field | Type | Description |
|---|---|---|
slug | string | Unique project identifier |
name | string | Project display name |
description | string | Project description |
logo | string | Project logo URL |
visibility | string | public or private |
is_private | boolean | Whether the project is private |
recurring | boolean | Whether the project is recurring |
owner | object | Project owner (name, username) |
settings | object | Project configuration |
stats | object | Aggregate statistics |
created_at | string | ISO 8601 creation timestamp |