API support for columns #13360

Open
opened 2025-11-02 10:39:53 -06:00 by GiteaMirror · 0 comments
Owner

Originally created by @eyad-hussein on GitHub (Aug 2, 2024).

Feature Description

I looked for a similar issue or a PR that tackled this feature and indeed found this issue https://github.com/go-gitea/gitea/issues/14299 and a PR that mentions it https://github.com/go-gitea/gitea/pull/28111. In addition to adding the columns endpoints, I also wanted to add two endpoints for projects, one that changes the status of the project from open to close and another for moving issues/prs from a project to another.

These are the endpoints I would like to include + the ones in the mentioned PR if that is fine.

Projects:

  • PATCH /projects/{project_id}/{action:close|open} // change project status from open to close and vice versa -- not in github api
  • PUT /repos/{owner}/{repo}/projects/{type:issues|pulls} // move(assign) issues between projects in repository -- not in github api

Columns:

  • GET /projects/columns/{column_id}

  • PATCH /projects/columns/{column_id}

  • DELETE /projects/columns/{column_id}

  • GET /projects/{project_id}/columns

  • POST /projects/{project_id}/columns

  • PATCH /projects/{project_id}/columns/move // moves(sorts) columns inside a project -- not in github api

  • PATCH /projects/{project_id}/columns/{column_id}/move // moves(sorts) issues in column -- not in github api

  • PUT /projects/columns/{column_id}/default // sets a default column -- not in github api

Implementation details:

  • Create a columnAssignment middleware similar to the middlewares already implemented(eg orgAssignment) to extract the ContextUser. After that, the other middlewares will check if the doer has the necessary permissions to execute the request.
  • Create necessary handlers for each endpoint

Screenshots

No response

Originally created by @eyad-hussein on GitHub (Aug 2, 2024). ### Feature Description I looked for a similar issue or a PR that tackled this feature and indeed found this issue https://github.com/go-gitea/gitea/issues/14299 and a PR that mentions it https://github.com/go-gitea/gitea/pull/28111. In addition to adding the columns endpoints, I also wanted to add two endpoints for projects, one that changes the status of the project from open to close and another for moving issues/prs from a project to another. These are the endpoints I would like to include + the ones in the mentioned PR if that is fine. Projects: - PATCH /projects/{project_id}/{action:close|open} // change project status from open to close and vice versa -- not in github api - PUT /repos/{owner}/{repo}/projects/{type:issues|pulls} // move(assign) issues between projects in repository -- not in github api Columns: - GET /projects/columns/{column_id} - PATCH /projects/columns/{column_id} - DELETE /projects/columns/{column_id} - GET /projects/{project_id}/columns - POST /projects/{project_id}/columns - PATCH /projects/{project_id}/columns/move // moves(sorts) columns inside a project -- not in github api - PATCH /projects/{project_id}/columns/{column_id}/move // moves(sorts) issues in column -- not in github api - PUT /projects/columns/{column_id}/default // sets a default column -- not in github api Implementation details: - Create a columnAssignment middleware similar to the middlewares already implemented(eg orgAssignment) to extract the ContextUser. After that, the other middlewares will check if the doer has the necessary permissions to execute the request. - Create necessary handlers for each endpoint ### Screenshots _No response_
GiteaMirror added the topic/apitype/proposal labels 2025-11-02 10:39:53 -06:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/gitea#13360