Forgejo Issue API

The issue API from Forgejo — 33 operation(s) for issue.

Operations 67

GET /repos/issues/search Search for issues across the repositories that the user has access to #
GET /repos/{owner}/{repo}/issues List a repository's issues #
POST /repos/{owner}/{repo}/issues Create an issue. #
GET /repos/{owner}/{repo}/issues/comments List all comments in a repository #
GET /repos/{owner}/{repo}/issues/comments/{id} Get a comment #
DELETE /repos/{owner}/{repo}/issues/comments/{id} Delete a comment #
PATCH /repos/{owner}/{repo}/issues/comments/{id} Edit a comment #
GET /repos/{owner}/{repo}/issues/comments/{id}/assets List comment's attachments #
POST /repos/{owner}/{repo}/issues/comments/{id}/assets Create a comment attachment #
GET /repos/{owner}/{repo}/issues/comments/{id}/assets/{attachment_id} Get a comment attachment #
DELETE /repos/{owner}/{repo}/issues/comments/{id}/assets/{attachment_id} Delete a comment attachment #
PATCH /repos/{owner}/{repo}/issues/comments/{id}/assets/{attachment_id} Edit a comment attachment #
GET /repos/{owner}/{repo}/issues/comments/{id}/reactions Get a list of reactions from a comment of an issue #
POST /repos/{owner}/{repo}/issues/comments/{id}/reactions Add a reaction to a comment of an issue #
DELETE /repos/{owner}/{repo}/issues/comments/{id}/reactions Remove a reaction from a comment of an issue #
GET /repos/{owner}/{repo}/issues/{index} Get an issue #
DELETE /repos/{owner}/{repo}/issues/{index} Delete an issue #
PATCH /repos/{owner}/{repo}/issues/{index} Edit an issue. #
GET /repos/{owner}/{repo}/issues/{index}/assets List issue's attachments #
POST /repos/{owner}/{repo}/issues/{index}/assets Create an issue attachment #
GET /repos/{owner}/{repo}/issues/{index}/assets/{attachment_id} Get an issue attachment #
DELETE /repos/{owner}/{repo}/issues/{index}/assets/{attachment_id} Delete an issue attachment #
PATCH /repos/{owner}/{repo}/issues/{index}/assets/{attachment_id} Edit an issue attachment #
GET /repos/{owner}/{repo}/issues/{index}/blocks List issues that are blocked by this issue #
POST /repos/{owner}/{repo}/issues/{index}/blocks Block the issue given in the body by the issue in path #
DELETE /repos/{owner}/{repo}/issues/{index}/blocks Unblock the issue given in the body by the issue in path #
GET /repos/{owner}/{repo}/issues/{index}/comments List all comments on an issue #
POST /repos/{owner}/{repo}/issues/{index}/comments Add a comment to an issue #
DELETE /repos/{owner}/{repo}/issues/{index}/comments/{id} Delete a comment #
PATCH /repos/{owner}/{repo}/issues/{index}/comments/{id} Edit a comment #
POST /repos/{owner}/{repo}/issues/{index}/deadline Set an issue deadline. #
GET /repos/{owner}/{repo}/issues/{index}/dependencies List an issue's dependencies, i.e all issues that block this issue #
POST /repos/{owner}/{repo}/issues/{index}/dependencies Make the issue in the url depend on the issue in the form #
DELETE /repos/{owner}/{repo}/issues/{index}/dependencies Remove an issue dependency #
GET /repos/{owner}/{repo}/issues/{index}/labels Get an issue's labels #
PUT /repos/{owner}/{repo}/issues/{index}/labels Replace an issue's labels #
POST /repos/{owner}/{repo}/issues/{index}/labels Add a label to an issue #
DELETE /repos/{owner}/{repo}/issues/{index}/labels Remove all labels from an issue #
DELETE /repos/{owner}/{repo}/issues/{index}/labels/{identifier} Remove a label from an issue #
POST /repos/{owner}/{repo}/issues/{index}/pin Pin an Issue #
DELETE /repos/{owner}/{repo}/issues/{index}/pin Unpin an Issue #
PATCH /repos/{owner}/{repo}/issues/{index}/pin/{position} Moves the Pin to the given Position #
GET /repos/{owner}/{repo}/issues/{index}/reactions Get a list reactions of an issue #
POST /repos/{owner}/{repo}/issues/{index}/reactions Add a reaction to an issue #
DELETE /repos/{owner}/{repo}/issues/{index}/reactions Remove a reaction from an issue #
DELETE /repos/{owner}/{repo}/issues/{index}/stopwatch/delete Delete an issue's existing stopwatch #
POST /repos/{owner}/{repo}/issues/{index}/stopwatch/start Start stopwatch on an issue #
POST /repos/{owner}/{repo}/issues/{index}/stopwatch/stop Stop an issue's existing stopwatch #
GET /repos/{owner}/{repo}/issues/{index}/subscriptions Get users who subscribed on an issue #
GET /repos/{owner}/{repo}/issues/{index}/subscriptions/check Check if user is subscribed to an issue #
PUT /repos/{owner}/{repo}/issues/{index}/subscriptions/{user} Subscribe user to issue #
DELETE /repos/{owner}/{repo}/issues/{index}/subscriptions/{user} Unsubscribe user from issue #
GET /repos/{owner}/{repo}/issues/{index}/timeline List all comments and events on an issue #
GET /repos/{owner}/{repo}/issues/{index}/times List an issue's tracked times #
POST /repos/{owner}/{repo}/issues/{index}/times Add tracked time to a issue #
DELETE /repos/{owner}/{repo}/issues/{index}/times Reset a tracked time of an issue #
DELETE /repos/{owner}/{repo}/issues/{index}/times/{id} Delete specific tracked time #
GET /repos/{owner}/{repo}/labels Get all of a repository's labels #
POST /repos/{owner}/{repo}/labels Create a label #
GET /repos/{owner}/{repo}/labels/{id} Get a single label #
DELETE /repos/{owner}/{repo}/labels/{id} Delete a label #
PATCH /repos/{owner}/{repo}/labels/{id} Update a label #
GET /repos/{owner}/{repo}/milestones Get all of a repository's opened milestones #
POST /repos/{owner}/{repo}/milestones Create a milestone #
GET /repos/{owner}/{repo}/milestones/{id} Get a milestone #
DELETE /repos/{owner}/{repo}/milestones/{id} Delete a milestone #
PATCH /repos/{owner}/{repo}/milestones/{id} Update a milestone #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/forgejo-issue-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

forgejo-issue-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: This documentation describes the Forgejo API.
  title: Forgejo Issue API
  license:
    name: This file is distributed under the MIT license for the purpose of interoperability
    url: http://opensource.org/licenses/MIT
  version: 16.0.0-dev-465-4b83448b7d+gitea-1.22.0
servers:
- url: /api/v1
security:
- BasicAuth: []
- AuthorizationHeaderToken: []
- SudoParam: []
- SudoHeader: []
- TOTPHeader: []
tags:


# --- truncated at 32 KB (109 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/forgejo/refs/heads/main/openapi/forgejo-issue-api-openapi.yml