af7d6d78a8
Generic: Repo Health / Scripts governance (push) Blocked by required conditions
Generic: Repo Health / Repository health (push) Blocked by required conditions
Generic: Repo Health / Report Issues (push) Blocked by required conditions
Generic: Repo Health / Site Health (push) Has been skipped
Generic: Repo Health / Access control (push) Successful in 1s
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Scripts governance (pull_request) Blocked by required conditions
Generic: Repo Health / Repository health (pull_request) Blocked by required conditions
Generic: Repo Health / Report Issues (pull_request) Blocked by required conditions
Generic: Repo Health / Site Health (pull_request) Has been skipped
Branch Policy Check / Verify merge target (pull_request) Successful in 1s
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Generic: Repo Health / Access control (pull_request) Successful in 1s
PR RC Release / Build RC Release (pull_request) Successful in 3s
Universal: PR Check / Validate PR (pull_request) Failing after 7s
Branch Cleanup / Delete merged branch (pull_request) Successful in 1s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || 'development' }}) (pull_request) Successful in 1m20s
- Update version to v1.26.1-moko.06.07.03 - Rewrite roadmap with current features and priorities - Add pending wiki pages (branding, deployment, API docs)
3.9 KiB
3.9 KiB
Project Board API Reference
Complete REST API for managing Gitea project boards, columns, and issue cards. This API was added by MokoGitea and is not available in upstream Gitea.
Authentication
All write endpoints require a token with issue scope:
Authorization: token YOUR_TOKEN
Projects
List Projects
GET /api/v1/repos/{owner}/{repo}/projects
Query parameters:
state—open(default),closed, orallpage— page number (1-based)limit— results per page
Response: Array of Project objects
Create Project
POST /api/v1/repos/{owner}/{repo}/projects
Body:
{
"title": "Sprint Q2 2026",
"description": "Second quarter sprint",
"board_type": 1,
"card_type": 0
}
board_type: 0=none, 1=basic kanban, 2=bug triagecard_type: 0=text only, 1=images and text
Get Project
GET /api/v1/repos/{owner}/{repo}/projects/{id}
Update Project
PATCH /api/v1/repos/{owner}/{repo}/projects/{id}
Body:
{
"title": "Updated Title",
"description": "Updated description"
}
Delete Project
DELETE /api/v1/repos/{owner}/{repo}/projects/{id}
Close/Reopen Project
POST /api/v1/repos/{owner}/{repo}/projects/{id}/close
POST /api/v1/repos/{owner}/{repo}/projects/{id}/reopen
Columns
List Columns
GET /api/v1/repos/{owner}/{repo}/projects/{id}/columns
Create Column
POST /api/v1/repos/{owner}/{repo}/projects/{id}/columns
Body:
{
"title": "Backlog",
"color": "#0075ca"
}
Delete Column
DELETE /api/v1/repos/{owner}/{repo}/projects/{id}/columns/{columnId}
Issue Cards
List Issues in Column
GET /api/v1/repos/{owner}/{repo}/projects/{id}/columns/{columnId}/issues
Response: Array of ProjectColumnIssue objects with issue_id, project_id, column_id, sorting
Add Issue to Column
POST /api/v1/repos/{owner}/{repo}/projects/{id}/columns/{columnId}/issues
Body:
{
"issue_id": 42
}
Move Issue Between Columns
PATCH /api/v1/repos/{owner}/{repo}/projects/{id}/issues/{issueId}/move
Body:
{
"column_id": 5,
"sorting": 0
}
Remove Issue from Project
DELETE /api/v1/repos/{owner}/{repo}/projects/{id}/issues/{issueId}
Data Types
Project
{
"id": 1,
"title": "Roadmap",
"description": "Development roadmap",
"owner_id": 2,
"repo_id": 68,
"creator_id": 1,
"is_closed": false,
"created_at": "2026-05-08T00:06:45Z",
"updated_at": "2026-05-08T00:06:45Z",
"closed_at": null
}
ProjectColumn
{
"id": 7,
"title": "Backlog",
"sorting": 0,
"color": "#0075ca",
"project_id": 1,
"default": false,
"created_at": "2026-05-08T00:06:58Z",
"updated_at": "2026-05-08T00:06:58Z"
}
ProjectColumnIssue
{
"id": 1,
"issue_id": 42,
"project_id": 1,
"column_id": 7,
"sorting": 0
}
MCP Integration
The project-mcp server wraps this API. Key tool: project_setup_roadmap creates a full project board with columns and loads all open issues in one call.
Quick Start
# Create a project
curl -X POST -H "Authorization: token TOKEN" \
https://git.mokoconsulting.tech/api/v1/repos/MokoConsulting/MokoCRM/projects \
-d '{"title":"Roadmap","board_type":1}'
# Add columns
curl -X POST -H "Authorization: token TOKEN" \
https://git.mokoconsulting.tech/api/v1/repos/MokoConsulting/MokoCRM/projects/1/columns \
-d '{"title":"Backlog"}'
# Add an issue
curl -X POST -H "Authorization: token TOKEN" \
https://git.mokoconsulting.tech/api/v1/repos/MokoConsulting/MokoCRM/projects/1/columns/1/issues \
-d '{"issue_id":42}'
Repo: MokoGitea · moko-platform
| Revision | Date | Author | Description |
|---|---|---|---|
| 1.0 | 2026-05-09 | Moko Consulting | Initial version |