projects

List all project issues

Lists all issues for a specified project. If the project is private, you need to provide credentials to authorize. In most cases, you should authenticate with a personal access token.

get/api/v4/projects/{id}/issues

Request

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

Path parameters

idstring required

The ID or URL-encoded path of the project

Query parameters

with_labels_detailsboolean

Return titles of labels and other details

state'opened' | 'closed' | 'all'

Return opened, closed, or all issues

closed_by_idinteger

Return issues which were closed by the user with the given ID.

order_by'created_at' | 'due_date' | 'label_priority' | 'milestone_due' | 'popularity' | 'priority' | 'relative_position' | 'title' | 'updated_at' | 'weight'

Return issues ordered by created_at, due_date, label_priority, milestone_due, popularity, priority, relative_position, title, or updated_at fields.

sort'asc' | 'desc'

Return issues sorted in asc or desc order.

due_date'0' | 'any' | 'today' | 'tomorrow' | 'overdue' | 'week' | 'month' | 'next_month_and_previous_two_weeks' | ''

Return issues that have no due date (0), or whose due date is this week, this month, between two weeks ago and next month, or which are overdue. Accepts: overdue, week, month, next_month_and_previous_two_weeks, 0

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

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

labelsstring[]

Comma-separated list of label names

milestonestring

Milestone title

milestone_id'Any' | 'None' | 'Upcoming' | 'Started'

Return issues assigned to milestones with the specified timebox value ("Any", "None", "Upcoming" or "Started")

iidsinteger[]

The IID array of issues

searchstring

Search issues for text present in the title, description, or any combination of these

instring

title, description, or a string joining them with comma

author_idinteger

Return issues which are authored by the user with the given ID

author_usernamestring

Return issues which are authored by the user with the given username

assignee_idinteger

Return issues which are assigned to the user with the given ID

assignee_usernamestring[]

Return issues which are assigned to the user with the given username

created_afterstring date-time

Return issues created after the specified time

created_beforestring date-time

Return issues created before the specified time

updated_afterstring date-time

Return issues updated after the specified time

updated_beforestring date-time

Return issues updated before the specified time

not[labels]string[]

Comma-separated list of label names

not[milestone]string

Milestone title

not[milestone_id]'Any' | 'None' | 'Upcoming' | 'Started'

Return issues assigned to milestones without the specified timebox value ("Any", "None", "Upcoming" or "Started")

not[iids]integer[]

The IID array of issues

not[author_id]integer

Return issues which are not authored by the user with the given ID

not[author_username]string

Return issues which are not authored by the user with the given username

not[assignee_id]integer

Return issues which are not assigned to the user with the given ID

not[assignee_username]string[]

Return issues which are not assigned to the user with the given username

not[weight]integer

Return issues without the specified weight

not[iteration_id]integer

Return issues which are not assigned to the iteration with the given ID

not[iteration_title]string

Return issues which are not assigned to the iteration with the given title

scope'created-by-me' | 'assigned-to-me' | 'created_by_me' | 'assigned_to_me' | 'all'

Return issues for the given scope: created_by_me, assigned_to_me or all

my_reaction_emojistring

Return issues reacted by the authenticated user by the given emoji

confidentialboolean

Filter confidential or public issues

weightinteger

The weight of the issue

epic_idinteger

The ID of an epic associated with the issues

health_status'on_track' | 'needs_attention' | 'at_risk' | 'none' | 'any'

The health status of the issue. Must be one of: on_track, needs_attention, at_risk, none, any

iteration_idinteger

Return issues which are assigned to the iteration with the given ID

iteration_titlestring

Return issues which are assigned to the iteration with the given title

pageinteger

Current page number

per_pageinteger

Number of items per page

cursorstring

Cursor for obtaining the next set of records

Response

List all project issues

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.