Update an issue
forgejo_update_issueModify an existing issue's state, title, body, labels, or assignees. Close, reopen, or replace any of these fields in one operation.
Instructions
Changes an existing issue: state, title, body, labels or assignees. Write operation: requires the 'write:issue' scope.
Parameters:
owner, repo (optional when defaults are configured)
number (required)
state ('open' | 'closed', optional): closes or reopens the issue
title (string, optional): replaces the current title
body (string, optional): replaces the current body — this overwrites, it does not append
labels (string[], optional): replaces the full label set; unknown names are skipped and reported
assignees (string[], optional): replaces the full assignee list
At least one changing field is required; omitted fields are left untouched.
Returns: { number, title, state, labels, assignees, html_url, unresolved_labels }
Examples:
"close issue 42" -> number=42, state='closed'
"reopen it and retitle it" -> number=42, state='open', title='…'
To add to a discussion without altering the issue, use forgejo_comment_issue instead. Also accepts a pull request number, but only its issue-side fields change — it cannot merge or close a PR's branch.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| body | No | Replacement body (overwrites, no append). | |
| repo | No | Repository name. Defaults to FORGEJO_DEFAULT_REPO. | |
| owner | No | Repository owner (user or organisation). Defaults to FORGEJO_DEFAULT_OWNER. | |
| state | No | New state: 'closed' closes the issue, 'open' reopens it. | |
| title | No | Replacement title. | |
| labels | No | Replacement label set, by name. | |
| number | Yes | Issue number as displayed (#42 -> 42). | |
| assignees | No | Replacement assignee list, by login. | |
| response_format | No | 'markdown' for a readable rendering, 'json' for the full data. | markdown |