projects

Update an issue

Updates a specified issue for a project. This request is also used to close or reopen an issue using the state_event parameter. At least one of the following parameters is required for the request to be successful: assignee_id, assignee_ids, confidential, created_at, description, discussion_locked, due_date, issue_type, labels, milestone_id, state_event, title.

put/api/v4/projects/{id}/issues/{issue_iid}

Request

  • Base URL
    https://gitlab.com
  • Auth
    none declared

Path parameters

idstring required

The ID or URL-encoded path of the project

issue_iidinteger required

The internal ID of a project issue

Request body

titlestring

The title of an issue

updated_atstring date-time

Date time when the issue was updated. Available only for admins and project owners.

state_event'reopen' | 'close'

State of the issue

descriptionstring

The description of an issue

assignee_idsinteger[]

The array of user IDs to assign issue

assignee_idinteger

[Deprecated] The ID of a user to assign issue

milestone_idinteger

The ID of a milestone to assign issue

milestonestring

The title of a project or ancestor-group milestone to assign the issue to. Mutually exclusive with milestone_id.

labelsstring[]

Comma-separated list of label names

add_labelsstring[]

Comma-separated list of label names

remove_labelsstring[]

Comma-separated list of label names

due_datestring

Date string in the format YEAR-MONTH-DAY

start_datestring

Date string in the format YEAR-MONTH-DAY

confidentialboolean

Boolean parameter if the issue should be confidential

discussion_lockedboolean

Boolean parameter indicating if the issue's discussion is locked

issue_type'issue' | 'incident' | 'test_case' | 'requirement' | 'task' | 'ticket'

The type of the issue. Accepts: issue, incident, test_case, requirement, task, ticket

severity'unknown' | 'low' | 'medium' | 'high' | 'critical'

The severity of the issue. Only applies to incidents. Accepts: unknown, low, medium, high, critical

weightinteger

The weight of the issue

epic_idinteger

The ID of an epic to associate the issue with

epic_iidinteger

The IID of an epic to associate the issue with (deprecated)

created_atstring

Response

Update an issue

idinteger required
iidinteger required
project_idinteger required
titlestring required
descriptionstring required
statestring required
created_atstring date-time required
updated_atstring date-time required
closed_atstring date-time required
labelsstring[] required
typestring required

One of ["ISSUE", "INCIDENT", "TEST_CASE", "REQUIREMENT", "TASK", "TICKET"]

user_notes_countinteger required
merge_requests_countinteger required
upvotesinteger required
downvotesinteger required
start_datestring date required
due_datestring date required
confidentialboolean required
discussion_lockedboolean required
issue_typestring required
web_urlstring required
weightinteger
blocking_issues_countinteger required
has_tasksboolean required
task_statusstring
severitystring required

One of ["UNKNOWN", "LOW", "MEDIUM", "HIGH", "CRITICAL"]

subscribedboolean
moved_to_idinteger required
importedboolean required
imported_fromstring required
service_desk_reply_tostring required
epic_iidstring
health_statusstring

Example response

{
  "id": 84,
  "iid": 14,
  "project_id": 4,
  "title": "Impedit et ut et dolores vero provident ullam est",
  "description": "Repellendus impedit et vel velit dignissimos.",
  "state": "closed",
  "created_at": "2022-08-17T12:46:35.053Z",
  "updated_at": "2022-11-14T17:22:01.470Z",
  "closed_at": "2022-11-15T08:30:55.232Z",
  "closed_by": {
    "id": 1,
    "username": "admin",
    "public_email": "john@example.com",
    "name": "Administrator",
    "state": "active",
    "avatar_url": "https://gravatar.com/avatar/1",
    "avatar_path": "/user/avatar/28/The-Big-Lebowski-400-400.png",
    "custom_attributes": [
      {
        "key": "foo",
        "value": "bar"
      }
    ],
    "web_url": "https://gitlab.example.com/root"
  },
  "labels": [
    "bug"
  ],
  "assignees": {
    "id": 1,
    "username": "admin",
    "public_email": "john@example.com",
    "name": "Administrator",
    "state": "active",
    "avatar_url": "https://gravatar.com/avatar/1",
    "avatar_path": "/user/avatar/28/The-Big-Lebowski-400-400.png",
    "custom_attributes": [
      {
        "key": "foo",
        "value": "bar"
      }
    ],
    "web_url": "https://gitlab.example.com/root"
  },
  "author": {
    "id": 1,
    "username": "admin",
    "public_email": "john@example.com",
    "name": "Administrator",
    "state": "active",
    "avatar_url": "https://gravatar.com/avatar/1",
    "avatar_path": "/user/avatar/28/The-Big-Lebowski-400-400.png",
    "custom_attributes": [
      {
        "key": "foo",
        "value": "bar"
      }
    ],
    "web_url": "https://gitlab.example.com/root"
  },
  "type": "ISSUE",
  "assignee": {
    "id": 1,
    "username": "admin",
    "public_email": "john@example.com",
    "name": "Administrator",
    "state": "active",
    "avatar_url": "https://gravatar.com/avatar/1",
    "avatar_path": "/user/avatar/28/The-Big-Lebowski-400-400.png",
    "custom_attributes": [
      {
        "key": "foo",
        "value": "bar"
      }
    ],
    "web_url": "https://gitlab.example.com/root"
  },
  "start_date": "2022-11-18",
  "due_date": "2022-11-20",
  "issue_type": "issue",
  "web_url": "http://example.com/example/example/issues/14",
  "time_stats": {
    "time_estimate": 12600,
    "total_time_spent": 3600,
    "human_time_estimate": "3h 30m",
    "human_total_time_spent": "1h"
  },
  "task_completion_status": {
    "count": 5,
    "completed_count": 3
  },
  "weight": 5,
  "blocking_issues_count": 2,
  "has_tasks": true,
  "task_status": "2 of 4 tasks completed",
  "_links": {
    "self": "http://example.com/api/v4/projects/1/issues/2",
    "notes": "http://example.com/api/v4/projects/1/issues/2/notes",
    "award_emoji": "http://example.com/api/v4/projects/1/issues/2/award_emoji",
    "project": "http://example.com/api/v4/projects/1",
    "closed_as_duplicate_of": "http://example.com/api/v4/projects/1/issues/75"
  },
  "references": {
    "short": "&6",
    "relative": "&6",
    "full": "test&6"
  },
  "moved_to_id": 1,
  "imported_from": "github",
  "service_desk_reply_to": "user@example.com",
  "iteration": {
    "id": 1,
    "iid": 1,
    "sequence": 1,
    "group_id": 1,
    "title": "Iteration I",
    "description": "Iteration description",
    "state": 1,
    "created_at": "2022-01-31T15:10:45.080Z",
    "updated_at": "2022-01-31T15:10:45.080Z",
    "start_date": "2022-01-01",
    "due_date": "2022-01-31",
    "web_url": "https://gitlab.example.com/groups/gitlab-org/-/iterations/1"
  }
}

Changes

No recorded changes to this operation across all 5 revisions of this API.