イシューAPI

REST APIを使ってGitLabイシューとやり取りできます。

ユーザーが非公開プロジェクトのメンバーでない場合、そのプロジェクトに対するGET リクエストは404 ステータスコードになります。

イシューのページネーション

デフォルトでは、APIの結果はページ分割されているため、GET リクエストは一度に20件の結果を返します。

ページ分割についての詳細はこちらをご覧ください。

caution
レスポンスのreference 属性は廃止され、references に変更されました。 GitLab 12.6 で導入されました
note
references.relative 属性は、リクエストされたイシューのグループやプロジェクトに対する相対属性です。イシューがプロジェクトから取得される場合、relative 形式はshort 形式と同じです。グループやプロジェクトを越えてリクエストされた場合は、full 形式と同じになります。

イシューの一覧

  • due_date プロパティは GitLab 13.3 で導入されました。
  • weight プロパティは13.9でGitLab Premiumに移動しました。
  • due_date フィルタany,today,tomorrow は GitLab 14.8 で導入されました。

認証ユーザーがアクセスできるすべてのイシューを取得します。デフォルトでは、現在のユーザーが作成したイシューのみを返します。すべてのイシューを取得するには、パラメータscope=all を使ってください。

GET /issues
GET /issues?assignee_id=5
GET /issues?author_id=5
GET /issues?confidential=true
GET /issues?iids[]=42&iids[]=43
GET /issues?labels=foo
GET /issues?labels=foo,bar
GET /issues?labels=foo,bar&state=opened
GET /issues?milestone=1.0.0
GET /issues?milestone=1.0.0&state=opened
GET /issues?my_reaction_emoji=star
GET /issues?search=foo&in=title
GET /issues?state=closed
GET /issues?state=opened
属性種類必須説明
assignee_id整数。いいえ指定されたユーザーid に割り当てられたイシューを返します。assignee_username と排他的です。None は未割り当てのイシューを返します。Any は担当者を持つイシューを返します。
assignee_username文字列配列いいえ指定されたusername に割り当てられたイシューを返します。と似てassignee_id おり、相互に排他的 assignee_idです。 GitLab CEでは、assignee_username 配列は単一の値のみを含む必要があります。そうでない場合は、無効なパラメータエラーが返されます。
author_id整数。いいえ指定されたユーザーid によって作成されたイシューを返します。author_username と排他的です。scope=all またはscope=assigned_to_me と組み合わせます。
author_username文字列です。いいえ指定されたusername によって作成されたイシューを返します。.NETと似てauthor_id いますが、互いに排他的 author_idです。
confidentialbooleanいいえ機密または公開イシューをフィルタリングします。
created_afterdatetimeいいえ指定された時刻以降に作成されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で指定します。
created_beforedatetimeいいえ指定された時刻以前に作成されたイシューを返します。ISO 8601フォーマット (2019-03-15T08:00:00Z) で期待されるもの
due_date文字列です。いいえ返却期限のないイシュー、返却期限を過ぎたイシュー、返却期限が今週、今月、または2週間前から来月までのイシューを返却します。利用可能:0 (期限なし)、anytodaytomorrowoverdueweekmonthnext_month_and_previous_two_weeks
epic_id 整数。いいえ None はエピックに関連しないイシューを返します。Any はエピックに関連するイシューを返します。(GitLab 13.6 で導入されました)
health_status 文字列です。いいえ指定されたhealth_statusを持つイシューを返します(GitLab 15.4で導入)GitLab 15.5以降ではNone はヘルスステータスが割り当てられていないイシューを返し、Any はヘルスステータスが割り当てられているイシューを返します。
iids[]整数配列。いいえ与えられたiid
in文字列です。いいえ search 属性のスコープを変更します。title,description, またはカンマで連結した文字列。デフォルトはtitle,description
issue_type文字列です。いいえ指定した種類のイシューにフィルタをかけます。issue,incident,test_case のいずれか。(GitLab 13.12 で導入)
iteration_id 整数。いいえ None はイテレーションに属さないイシューを返します。Any はイテレーションに属するイシューを返します。iteration_title と排他的です_(GitLab 13.6 で導入)_。
iteration_title iteration_title 文字列です。いいえ指定されたタイトルのイテレーションに割り当てられたイシューを返します。iteration_id. iteration_idと似てiteration_id いますが、互いに排他的 iteration_idです_(GitLab 13.6 で導入)_。
labels文字列です。いいえラベル名のカンマ区切りリスト。None はラベルのないすべてのイシューをリストします。Any は少なくとも1つのラベルを持つすべてのイシューをリストします。 No+Label (非推奨) はラベルのないすべてのイシューをリストします。定義済みの名前は大文字と小文字を区別しません。
milestone文字列です。いいえマイルストーンのタイトルです。None にはマイルストーンのないイシューがすべてリストアップされます。Any にはマイルストーンが割り当てられているイシューがすべてリストアップされます。None またはAny を使用することは今後推奨されません。代わりにmilestone_id 属性を使用してください。milestonemilestone_id は相互に排他的です。
milestone_id文字列です。いいえ指定されたタイムボックス値 (None,Any,Upcoming,Started) を持つマイルストーンに割り当てられたイシューを返します。None はマイルストーンが割り当てられていないすべてのイシューをリストアップします。Any はマイルストーンが割り当てられているすべてのイシューをリストアップします。Upcoming は将来期限が到来するマイルストーンに割り当てられたすべてのイシューをリストアップします。Started は開始された未解決のマイルストーンに割り当てられたすべてのイシューをリストアップします。milestonemilestone_id は相互に排他的です。(GitLab 14.3 で導入されました)
my_reaction_emoji文字列です。いいえ emoji None は、リアクションが与えられていないイシューを返します。Any は、少なくとも1つのリアクションが与えられたイシューを返します。
non_archivedbooleanいいえアーカイブされていないプロジェクトのイシューのみを返します。false の場合、アーカイブされたプロジェクトとアーカイブされていないプロジェクトの両方のイシューを返します。デフォルトはtrue です_(GitLab 13.0 で導入)_。
notハッシュいいえ指定されたパラメータに一致しないイシューを返します。を受け付けます:assignee_id assignee_username,author_id,author_username,iids,iteration_id,iteration_title,labels,milestone,milestone_id andweight.
order_by文字列です。いいえ created_atdue_datelabel_prioritymilestone_duepopularitypriorityrelative_positiontitleupdated_atweight のいずれかのフィールドで並べ替えられたイシューを返します。デフォルトはcreated_at
scope文字列です。いいえ指定されたスコープのイシューを返します:created_by_me assigned_to_me またはall 。デフォルトはcreated_by_me です。
search文字列です。いいえ title 、イシューを検索します。description
sort文字列です。いいえ asc 、またはソートされたイシューを返しますdesc 。デフォルトは desc
state文字列です。いいえ all イシュー、あるいはopened またはclosed
updated_afterdatetimeいいえ指定された時刻以降に更新されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で期待されるもの
updated_beforedatetimeいいえ指定された時刻以前に更新されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で期待されるもの
weight 整数。いいえ指定されたweightを持つイシューを返します。None は、ウェイトが割り当てられていないイシューを返します。Any は、ウェイトが割り当てられているイシューを返します。
with_labels_detailsbooleanいいえ true の場合、レスポンスはlabelsフィールドの各ラベルの詳細を返します::name :color,:description,:description_html,:text_color.デフォルトはfalse です。description_html 属性は GitLab 12.7 で導入されました。
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/issues"

応答例

[
   {
      "state" : "opened",
      "description" : "Ratione dolores corrupti mollitia soluta quia.",
      "author" : {
         "state" : "active",
         "id" : 18,
         "web_url" : "https://gitlab.example.com/eileen.lowe",
         "name" : "Alexandra Bashirian",
         "avatar_url" : null,
         "username" : "eileen.lowe"
      },
      "milestone" : {
         "project_id" : 1,
         "description" : "Ducimus nam enim ex consequatur cumque ratione.",
         "state" : "closed",
         "due_date" : null,
         "iid" : 2,
         "created_at" : "2016-01-04T15:31:39.996Z",
         "title" : "v4.0",
         "id" : 17,
         "updated_at" : "2016-01-04T15:31:39.996Z"
      },
      "project_id" : 1,
      "assignees" : [{
         "state" : "active",
         "id" : 1,
         "name" : "Administrator",
         "web_url" : "https://gitlab.example.com/root",
         "avatar_url" : null,
         "username" : "root"
      }],
      "assignee" : {
         "state" : "active",
         "id" : 1,
         "name" : "Administrator",
         "web_url" : "https://gitlab.example.com/root",
         "avatar_url" : null,
         "username" : "root"
      },
      "type" : "ISSUE",
      "updated_at" : "2016-01-04T15:31:51.081Z",
      "closed_at" : null,
      "closed_by" : null,
      "id" : 76,
      "title" : "Consequatur vero maxime deserunt laboriosam est voluptas dolorem.",
      "created_at" : "2016-01-04T15:31:51.081Z",
      "moved_to_id" : null,
      "iid" : 6,
      "labels" : ["foo", "bar"],
      "upvotes": 4,
      "downvotes": 0,
      "merge_requests_count": 0,
      "user_notes_count": 1,
      "due_date": "2016-07-22",
      "web_url": "http://gitlab.example.com/my-group/my-project/issues/6",
      "references": {
        "short": "#6",
        "relative": "my-group/my-project#6",
        "full": "my-group/my-project#6"
      },
      "time_stats": {
         "time_estimate": 0,
         "total_time_spent": 0,
         "human_time_estimate": null,
         "human_total_time_spent": null
      },
      "has_tasks": true,
      "task_status": "10 of 15 tasks completed",
      "confidential": false,
      "discussion_locked": false,
      "issue_type": "issue",
      "severity": "UNKNOWN",
      "_links":{
         "self":"http://gitlab.example.com/api/v4/projects/1/issues/76",
         "notes":"http://gitlab.example.com/api/v4/projects/1/issues/76/notes",
         "award_emoji":"http://gitlab.example.com/api/v4/projects/1/issues/76/award_emoji",
         "project":"http://gitlab.example.com/api/v4/projects/1",
         "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
      },
      "task_completion_status":{
         "count":0,
         "completed_count":0
      }
   }
]

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

[
   {
      "state" : "opened",
      "description" : "Ratione dolores corrupti mollitia soluta quia.",
      "weight": null,
      ...
   }
]

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、iteration プロパティが含まれています:

{
   "iteration": {
      "id":90,
      "iid":4,
      "sequence":2,
      "group_id":162,
      "title":null,
      "description":null,
      "state":2,
      "created_at":"2022-03-14T05:21:11.929Z",
      "updated_at":"2022-03-14T05:21:11.929Z",
      "start_date":"2022-03-08",
      "due_date":"2022-03-14",
      "web_url":"https://gitlab.com/groups/my-group/-/iterations/90"
   }
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "state" : "opened",
      "description" : "Ratione dolores corrupti mollitia soluta quia.",
      "health_status": "on_track",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

リストグループのイシュー

  • due_date プロパティは GitLab 13.3 で導入されました。
  • weight プロパティは13.9でGitLab Premiumに移動しました。
  • due_date フィルタany,today,tomorrow は GitLab 14.8 で導入されました。

グループのイシューの一覧を取得します。

グループが非公開の場合、作成者の認証が必要です。これを行うには、個人アクセストークンを使用するのが好ましい方法です。

GET /groups/:id/issues
GET /groups/:id/issues?assignee_id=5
GET /groups/:id/issues?author_id=5
GET /groups/:id/issues?confidential=true
GET /groups/:id/issues?iids[]=42&iids[]=43
GET /groups/:id/issues?labels=foo
GET /groups/:id/issues?labels=foo,bar
GET /groups/:id/issues?labels=foo,bar&state=opened
GET /groups/:id/issues?milestone=1.0.0
GET /groups/:id/issues?milestone=1.0.0&state=opened
GET /groups/:id/issues?my_reaction_emoji=star
GET /groups/:id/issues?search=issue+title+or+description
GET /groups/:id/issues?state=closed
GET /groups/:id/issues?state=opened
属性種類必須説明
assignee_id整数。いいえ指定されたユーザーid に割り当てられたイシューを返します。assignee_username と排他的です。None は未割り当てのイシューを返します。Any は担当者を持つイシューを返します。
assignee_username文字列配列いいえ指定されたusername に割り当てられたイシューを返します。と似てassignee_id おり、相互に排他的 assignee_idです。 GitLab CEでは、assignee_username 配列は単一の値のみを含む必要があります。そうでない場合は、無効なパラメータエラーが返されます。
author_id整数。いいえ指定されたユーザーid によって作成されたイシューを返します。author_username と排他的です。scope=all またはscope=assigned_to_me と組み合わせます。
author_username文字列です。いいえ指定されたusername によって作成されたイシューを返します。.NETと似てauthor_id いますが、互いに排他的 author_idです。
confidentialbooleanいいえ機密または公開イシューをフィルタリングします。
created_afterdatetimeいいえ指定された時刻以降に作成されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で指定します。
created_beforedatetimeいいえ指定された時刻以前に作成されたイシューを返します。ISO 8601フォーマット (2019-03-15T08:00:00Z) で期待されるもの
due_date文字列です。いいえ返却期限のないイシュー、返却期限を過ぎたイシュー、返却期限が今週、今月、または2週間前から来月までのイシューを返却します。利用可能:0 (期限なし)、anytodaytomorrowoverdueweekmonthnext_month_and_previous_two_weeks
epic_id 整数。いいえ None はエピックに関連しないイシューを返します。Any はエピックに関連するイシューを返します。(GitLab 13.6 で導入されました)
id整数/文字列yes認証されたユーザーが所有するグループのグローバルIDまたはURLエンコードされたパス
iids[]整数配列。いいえ与えられたiid
issue_type文字列です。いいえ指定した種類のイシューにフィルタをかけます。issue,incident,test_case のいずれか。(GitLab 13.12 で導入)
iteration_id 整数。いいえ None はイテレーションに属さないイシューを返します。Any はイテレーションに属するイシューを返します。iteration_title と排他的です_(GitLab 13.6 で導入)_。
iteration_title iteration_title 文字列です。いいえ指定されたタイトルのイテレーションに割り当てられたイシューを返します。iteration_id. iteration_idと似てiteration_id いますが、互いに排他的 iteration_idです_(GitLab 13.6 で導入)_。
labels文字列です。いいえラベル名のカンマ区切りリスト。None はラベルのないすべてのイシューをリストします。Any は少なくとも1つのラベルを持つすべてのイシューをリストします。 No+Label (非推奨) はラベルのないすべてのイシューをリストします。定義済みの名前は大文字と小文字を区別しません。
milestone文字列です。いいえマイルストーンのタイトルです。None 、マイルストーンのないすべてのイシューがリストされます。Any 、マイルストーンが割り当てられているすべてのイシューがリストされます。
my_reaction_emoji文字列です。いいえ emoji None は、リアクションが与えられていないイシューを返します。Any は、少なくとも1つのリアクションが与えられたイシューを返します。
non_archivedbooleanいいえアーカイブされていないプロジェクトのイシューを返します。デフォルトはtrueです_(GitLab 12.8で導入)_。
notハッシュいいえ指定されたパラメータに一致しないイシューを返します。を受け付けます:labels milestone,author_id,author_username,assignee_id,assignee_username,my_reaction_emoji,searchin
order_by文字列です。いいえ created_at,updated_at,priority,due_date,relative_position,label_priority,milestone_due,popularity,weight フィールドで並べ替えられたイシューを返します。デフォルトはcreated_at
scope文字列です。いいえ指定されたスコープのイシューを返します:created_by_me assigned_to_me またはall.デフォルトは all.
search文字列です。いいえグループのイシューをtitle と照らし合わせて検索します。description
sort文字列です。いいえ asc 、またはソートされたイシューを返しますdesc 。デフォルトは desc
state文字列です。いいえすべてのイシューを返却するか、opened またはclosed
updated_afterdatetimeいいえ指定された時刻以降に更新されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で期待されるもの
updated_beforedatetimeいいえ指定された時刻以前に更新されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で期待されるもの
weight 整数。いいえ指定されたweightを持つイシューを返します。None は、ウェイトが割り当てられていないイシューを返します。Any は、ウェイトが割り当てられているイシューを返します。
with_labels_detailsbooleanいいえ true の場合、レスポンスはlabelsフィールドの各ラベルの詳細を返します::name :color,:description,:description_html,:text_color.デフォルトはfalse です。description_html 属性は GitLab 12.7 で導入されました。
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/4/issues"

応答例

[
   {
      "project_id" : 4,
      "milestone" : {
         "due_date" : null,
         "project_id" : 4,
         "state" : "closed",
         "description" : "Rerum est voluptatem provident consequuntur molestias similique ipsum dolor.",
         "iid" : 3,
         "id" : 11,
         "title" : "v3.0",
         "created_at" : "2016-01-04T15:31:39.788Z",
         "updated_at" : "2016-01-04T15:31:39.788Z"
      },
      "author" : {
         "state" : "active",
         "web_url" : "https://gitlab.example.com/root",
         "avatar_url" : null,
         "username" : "root",
         "id" : 1,
         "name" : "Administrator"
      },
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "state" : "closed",
      "iid" : 1,
      "assignees" : [{
         "avatar_url" : null,
         "web_url" : "https://gitlab.example.com/lennie",
         "state" : "active",
         "username" : "lennie",
         "id" : 9,
         "name" : "Dr. Luella Kovacek"
      }],
      "assignee" : {
         "avatar_url" : null,
         "web_url" : "https://gitlab.example.com/lennie",
         "state" : "active",
         "username" : "lennie",
         "id" : 9,
         "name" : "Dr. Luella Kovacek"
      },
      "type" : "ISSUE",
      "labels" : ["foo", "bar"],
      "upvotes": 4,
      "downvotes": 0,
      "merge_requests_count": 0,
      "id" : 41,
      "title" : "Ut commodi ullam eos dolores perferendis nihil sunt.",
      "updated_at" : "2016-01-04T15:31:46.176Z",
      "created_at" : "2016-01-04T15:31:46.176Z",
      "closed_at" : null,
      "closed_by" : null,
      "user_notes_count": 1,
      "due_date": null,
      "web_url": "http://gitlab.example.com/my-group/my-project/issues/1",
      "references": {
        "short": "#1",
        "relative": "my-project#1",
        "full": "my-group/my-project#1"
      },
      "time_stats": {
         "time_estimate": 0,
         "total_time_spent": 0,
         "human_time_estimate": null,
         "human_total_time_spent": null
      },
      "has_tasks": true,
      "task_status": "10 of 15 tasks completed",
      "confidential": false,
      "discussion_locked": false,
      "issue_type": "issue",
      "severity": "UNKNOWN",
      "_links":{
         "self":"http://gitlab.example.com/api/v4/projects/4/issues/41",
         "notes":"http://gitlab.example.com/api/v4/projects/4/issues/41/notes",
         "award_emoji":"http://gitlab.example.com/api/v4/projects/4/issues/41/award_emoji",
         "project":"http://gitlab.example.com/api/v4/projects/4",
         "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
      },
      "task_completion_status":{
         "count":0,
         "completed_count":0
      }
   }
]

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "weight": null,
      ...
   }
]

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "at_risk",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

プロジェクトのイシューを一覧表示

  • due_date プロパティは GitLab 13.3 で導入されました。
  • weight プロパティは13.9でGitLab Premiumに移動しました。
  • due_date フィルタany,today,tomorrow は GitLab 14.8 で導入されました。

プロジェクトのイシューの一覧を取得します。

プロジェクトが非公開の場合は、作成者の認証情報が必要です。この場合、個人アクセストークンを使用するのが望ましい方法です。

GET /projects/:id/issues
GET /projects/:id/issues?assignee_id=5
GET /projects/:id/issues?author_id=5
GET /projects/:id/issues?confidential=true
GET /projects/:id/issues?iids[]=42&iids[]=43
GET /projects/:id/issues?labels=foo
GET /projects/:id/issues?labels=foo,bar
GET /projects/:id/issues?labels=foo,bar&state=opened
GET /projects/:id/issues?milestone=1.0.0
GET /projects/:id/issues?milestone=1.0.0&state=opened
GET /projects/:id/issues?my_reaction_emoji=star
GET /projects/:id/issues?search=issue+title+or+description
GET /projects/:id/issues?state=closed
GET /projects/:id/issues?state=opened
属性種類必須説明
assignee_id整数。いいえ指定されたユーザーid に割り当てられたイシューを返します。assignee_username と排他的です。None は未割り当てのイシューを返します。Any は担当者を持つイシューを返します。
assignee_username文字列配列いいえ指定されたusername に割り当てられたイシューを返します。と似てassignee_id おり、相互に排他的 assignee_idです。 GitLab CEでは、assignee_username 配列は単一の値のみを含む必要があります。そうでない場合は、無効なパラメータエラーが返されます。
author_id整数。いいえ指定されたユーザーid によって作成されたイシューを返します。author_username と排他的です。scope=all またはscope=assigned_to_me と組み合わせます。
author_username文字列です。いいえ指定されたusername によって作成されたイシューを返します。.NETと似てauthor_id いますが、互いに排他的 author_idです。
confidentialbooleanいいえ機密または公開イシューをフィルタリングします。
created_afterdatetimeいいえ指定された時刻以降に作成されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で指定します。
created_beforedatetimeいいえ指定された時刻以前に作成されたイシューを返します。ISO 8601フォーマット (2019-03-15T08:00:00Z) で期待されるもの
due_date文字列です。いいえ返却期限のないイシュー、返却期限を過ぎたイシュー、返却期限が今週、今月、または2週間前から来月までのイシューを返却します。利用可能:0 (期限なし)、anytodaytomorrowoverdueweekmonthnext_month_and_previous_two_weeks
epic_id 整数。いいえ None はエピックに関連しないイシューを返します。Any はエピックに関連するイシューを返します。(GitLab 13.6 で導入されました)
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
iids[]整数配列。いいえ与えられたiid
issue_type文字列です。いいえ指定した種類のイシューにフィルタをかけます。issue,incident,test_case のいずれか。(GitLab 13.12 で導入)
iteration_id 整数。いいえ None はイテレーションに属さないイシューを返します。Any はイテレーションに属するイシューを返します。iteration_title と排他的です_(GitLab 13.6 で導入)_。
iteration_title iteration_title 文字列です。いいえ指定されたタイトルのイテレーションに割り当てられたイシューを返します。iteration_id. iteration_idと似てiteration_id いますが、互いに排他的 iteration_idです_(GitLab 13.6 で導入)_。
labels文字列です。いいえラベル名のカンマ区切りリスト。None はラベルのないすべてのイシューをリストします。Any は少なくとも1つのラベルを持つすべてのイシューをリストします。 No+Label (非推奨) はラベルのないすべてのイシューをリストします。定義済みの名前は大文字と小文字を区別しません。
milestone文字列です。いいえマイルストーンのタイトルです。None 、マイルストーンのないすべてのイシューがリストされます。Any 、マイルストーンが割り当てられているすべてのイシューがリストされます。
my_reaction_emoji文字列です。いいえ emoji None は、リアクションが与えられていないイシューを返します。Any は、少なくとも1つのリアクションが与えられたイシューを返します。
notハッシュいいえ指定されたパラメータに一致しないイシューを返します。を受け付けます:labels milestone,author_id,author_username,assignee_id,assignee_username,my_reaction_emoji,searchin
order_by文字列です。いいえ created_at,updated_at,priority,due_date,relative_position,label_priority,milestone_due,popularity,weight フィールドで並べ替えられたイシューを返します。デフォルトはcreated_at
scope文字列です。いいえ指定されたスコープのイシューを返します:created_by_me assigned_to_me またはall.デフォルトは all.
search文字列です。いいえプロジェクトのイシューをtitle と照らし合わせて検索します。description
sort文字列です。いいえ asc 、またはソートされたイシューを返しますdesc 。デフォルトは desc
state文字列です。いいえすべてのイシューを返却するか、opened またはclosed
updated_afterdatetimeいいえ指定された時刻以降に更新されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で期待されるもの
updated_beforedatetimeいいえ指定された時刻以前に更新されたイシューを返します。ISO 8601 フォーマット (2019-03-15T08:00:00Z) で期待されるもの
weight 整数。いいえ指定されたweightを持つイシューを返します。None は、ウェイトが割り当てられていないイシューを返します。Any は、ウェイトが割り当てられているイシューを返します。
with_labels_detailsbooleanいいえ true の場合、レスポンスはlabelsフィールドの各ラベルの詳細を返します::name :color,:description,:description_html,:text_color.デフォルトはfalsedescription_html は GitLab 12.7 で導入されました。
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/4/issues"

応答例

[
   {
      "project_id" : 4,
      "milestone" : {
         "due_date" : null,
         "project_id" : 4,
         "state" : "closed",
         "description" : "Rerum est voluptatem provident consequuntur molestias similique ipsum dolor.",
         "iid" : 3,
         "id" : 11,
         "title" : "v3.0",
         "created_at" : "2016-01-04T15:31:39.788Z",
         "updated_at" : "2016-01-04T15:31:39.788Z"
      },
      "author" : {
         "state" : "active",
         "web_url" : "https://gitlab.example.com/root",
         "avatar_url" : null,
         "username" : "root",
         "id" : 1,
         "name" : "Administrator"
      },
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "state" : "closed",
      "iid" : 1,
      "assignees" : [{
         "avatar_url" : null,
         "web_url" : "https://gitlab.example.com/lennie",
         "state" : "active",
         "username" : "lennie",
         "id" : 9,
         "name" : "Dr. Luella Kovacek"
      }],
      "assignee" : {
         "avatar_url" : null,
         "web_url" : "https://gitlab.example.com/lennie",
         "state" : "active",
         "username" : "lennie",
         "id" : 9,
         "name" : "Dr. Luella Kovacek"
      },
      "type" : "ISSUE",
      "labels" : ["foo", "bar"],
      "upvotes": 4,
      "downvotes": 0,
      "merge_requests_count": 0,
      "id" : 41,
      "title" : "Ut commodi ullam eos dolores perferendis nihil sunt.",
      "updated_at" : "2016-01-04T15:31:46.176Z",
      "created_at" : "2016-01-04T15:31:46.176Z",
      "closed_at" : "2016-01-05T15:31:46.176Z",
      "closed_by" : {
         "state" : "active",
         "web_url" : "https://gitlab.example.com/root",
         "avatar_url" : null,
         "username" : "root",
         "id" : 1,
         "name" : "Administrator"
      },
      "user_notes_count": 1,
      "due_date": "2016-07-22",
      "web_url": "http://gitlab.example.com/my-group/my-project/issues/1",
      "references": {
        "short": "#1",
        "relative": "#1",
        "full": "my-group/my-project#1"
      },
      "time_stats": {
         "time_estimate": 0,
         "total_time_spent": 0,
         "human_time_estimate": null,
         "human_total_time_spent": null
      },
      "has_tasks": true,
      "task_status": "10 of 15 tasks completed",
      "confidential": false,
      "discussion_locked": false,
      "issue_type": "issue",
      "severity": "UNKNOWN",
      "_links":{
         "self":"http://gitlab.example.com/api/v4/projects/4/issues/41",
         "notes":"http://gitlab.example.com/api/v4/projects/4/issues/41/notes",
         "award_emoji":"http://gitlab.example.com/api/v4/projects/4/issues/41/award_emoji",
         "project":"http://gitlab.example.com/api/v4/projects/4",
         "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
      },
      "task_completion_status":{
         "count":0,
         "completed_count":0
      }
   }
]

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "weight": null,
      ...
   }
]

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "at_risk",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

単一のイシュー

管理者専用。単一のイシューを取得します。

個人アクセストークンを使用するのが望ましい方法です。

GET /issues/:id
属性種類必須説明
id整数。yesイシューのID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/issues/41"

応答例

{
  "id": 1,
  "milestone": {
    "due_date": null,
    "project_id": 4,
    "state": "closed",
    "description": "Rerum est voluptatem provident consequuntur molestias similique ipsum dolor.",
    "iid": 3,
    "id": 11,
    "title": "v3.0",
    "created_at": "2016-01-04T15:31:39.788Z",
    "updated_at": "2016-01-04T15:31:39.788Z",
    "closed_at": "2016-01-05T15:31:46.176Z"
  },
  "author": {
    "state": "active",
    "web_url": "https://gitlab.example.com/root",
    "avatar_url": null,
    "username": "root",
    "id": 1,
    "name": "Administrator"
  },
  "description": "Omnis vero earum sunt corporis dolor et placeat.",
  "state": "closed",
  "iid": 1,
  "assignees": [
    {
      "avatar_url": null,
      "web_url": "https://gitlab.example.com/lennie",
      "state": "active",
      "username": "lennie",
      "id": 9,
      "name": "Dr. Luella Kovacek"
    }
  ],
  "assignee": {
    "avatar_url": null,
    "web_url": "https://gitlab.example.com/lennie",
    "state": "active",
    "username": "lennie",
    "id": 9,
    "name": "Dr. Luella Kovacek"
  },
  "type": "ISSUE",
  "labels": [],
  "upvotes": 4,
  "downvotes": 0,
  "merge_requests_count": 0,
  "title": "Ut commodi ullam eos dolores perferendis nihil sunt.",
  "updated_at": "2016-01-04T15:31:46.176Z",
  "created_at": "2016-01-04T15:31:46.176Z",
  "closed_at": null,
  "closed_by": null,
  "subscribed": false,
  "user_notes_count": 1,
  "due_date": null,
  "web_url": "http://example.com/my-group/my-project/issues/1",
  "references": {
    "short": "#1",
    "relative": "#1",
    "full": "my-group/my-project#1"
  },
  "time_stats": {
    "time_estimate": 0,
    "total_time_spent": 0,
    "human_time_estimate": null,
    "human_total_time_spent": null
  },
  "confidential": false,
  "discussion_locked": false,
  "issue_type": "issue",
  "severity": "UNKNOWN",
  "task_completion_status": {
    "count": 0,
    "completed_count": 0
  },
  "weight": null,
  "has_tasks": false,
  "_links": {
    "self": "http://gitlab.example:3000/api/v4/projects/1/issues/1",
    "notes": "http://gitlab.example:3000/api/v4/projects/1/issues/1/notes",
    "award_emoji": "http://gitlab.example:3000/api/v4/projects/1/issues/1/award_emoji",
    "project": "http://gitlab.example:3000/api/v4/projects/1",
    "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
  },
  "moved_to_id": null,
  "service_desk_reply_to": "service.desk@gitlab.com"
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "weight": null,
   ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic": {
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimateのユーザーもhealth_status プロパティを見ることができます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "on_track",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid を使用してください。

単一プロジェクトのイシュー

単一プロジェクトのイシューを取得します。

プロジェクトが非公開であったり、イシューが機密であったりする場合は、作成者の認証が必要です。この場合、個人アクセストークンを使用するのが望ましい方法です。

GET /projects/:id/issues/:issue_iid
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/4/issues/41"

応答例

{
   "project_id" : 4,
   "milestone" : {
      "due_date" : null,
      "project_id" : 4,
      "state" : "closed",
      "description" : "Rerum est voluptatem provident consequuntur molestias similique ipsum dolor.",
      "iid" : 3,
      "id" : 11,
      "title" : "v3.0",
      "created_at" : "2016-01-04T15:31:39.788Z",
      "updated_at" : "2016-01-04T15:31:39.788Z",
      "closed_at" : "2016-01-05T15:31:46.176Z"
   },
   "author" : {
      "state" : "active",
      "web_url" : "https://gitlab.example.com/root",
      "avatar_url" : null,
      "username" : "root",
      "id" : 1,
      "name" : "Administrator"
   },
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "state" : "closed",
   "iid" : 1,
   "assignees" : [{
      "avatar_url" : null,
      "web_url" : "https://gitlab.example.com/lennie",
      "state" : "active",
      "username" : "lennie",
      "id" : 9,
      "name" : "Dr. Luella Kovacek"
   }],
   "assignee" : {
      "avatar_url" : null,
      "web_url" : "https://gitlab.example.com/lennie",
      "state" : "active",
      "username" : "lennie",
      "id" : 9,
      "name" : "Dr. Luella Kovacek"
   },
   "type" : "ISSUE",
   "labels" : [],
   "upvotes": 4,
   "downvotes": 0,
   "merge_requests_count": 0,
   "id" : 41,
   "title" : "Ut commodi ullam eos dolores perferendis nihil sunt.",
   "updated_at" : "2016-01-04T15:31:46.176Z",
   "created_at" : "2016-01-04T15:31:46.176Z",
   "closed_at" : null,
   "closed_by" : null,
   "subscribed": false,
   "user_notes_count": 1,
   "due_date": null,
   "web_url": "http://gitlab.example.com/my-group/my-project/issues/1",
   "references": {
     "short": "#1",
     "relative": "#1",
     "full": "my-group/my-project#1"
   },
   "time_stats": {
      "time_estimate": 0,
      "total_time_spent": 0,
      "human_time_estimate": null,
      "human_total_time_spent": null
   },
   "confidential": false,
   "discussion_locked": false,
   "issue_type": "issue",
   "severity": "UNKNOWN",
   "_links": {
      "self": "http://gitlab.example.com/api/v4/projects/1/issues/2",
      "notes": "http://gitlab.example.com/api/v4/projects/1/issues/2/notes",
      "award_emoji": "http://gitlab.example.com/api/v4/projects/1/issues/2/award_emoji",
      "project": "http://gitlab.example.com/api/v4/projects/1",
      "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
   },
   "task_completion_status":{
      "count":0,
      "completed_count":0
   }
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "weight": null,
   ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimateのユーザーもhealth_status プロパティを見ることができます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "on_track",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

新しいイシュー

weight プロパティは13.9でGitLab Premiumに移動しました。

新しいプロジェクトのイシューを作成します。

POST /projects/:id/issues
属性種類必須説明
assignee_id整数。いいえイシューを割り当てるユーザーのID。GitLab Freeにのみ表示されます。
assignee_ids 整数配列。いいえイシューを割り当てるユーザのID。
confidentialbooleanいいえイシューを秘密に設定します。デフォルトはfalse です。
created_at文字列です。いいえイシューが作成された日付。ISO 8601形式の日付時刻文字列(例:2016-03-11T03:45:40Z )。管理者またはプロジェクト/グループのオーナー権限が必要です。
description文字列です。いいえイシューの説明。1,048,576文字に制限されています。
discussion_to_resolve文字列です。いいえ解決するディスカッションのID。これはデフォルトの説明でイシューを記入し、解決済みとしてディスカッションをマークします。merge_request_to_resolve_discussions_of と組み合わせて使用してください。
due_date文字列です。いいえ期日。YYYY-MM-DD のような形式の日付時刻文字列。2016-03-11
epic_id 整数。いいえイシューを追加するエピックID。有効な値は0以上です。
epic_iid 整数。いいえイシューを追加するエピックのIID。有効な値は0以上です(非推奨。APIバージョン5で削除予定)。
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
iid整数/文字列いいえプロジェクトのイシューの内部ID(管理者またはプロジェクト・オーナーの権限が必要です)
issue_type文字列です。いいえイシューの種類。issueincidenttest_case のいずれかです。デフォルトはissue です。
labels文字列です。いいえイシューのカンマ区切りラベル名
merge_request_to_resolve_discussions_of整数。いいえすべてのイシューを解決するマージリクエストのIIDです。これはデフォルトの説明でイシューを埋め、すべてのディスカッションを解決済みとしてマークします。説明やタイトルを渡す場合、これらの値はデフォルト値よりも優先されます。
milestone_id整数。いいえissueに割り当てるマイルストーンのグローバルID。マイルストーンに関連付けられたmilestone_id を見つけるには、マイルストーンが割り当てられたイシューを表示し、APIを使用してイシューの詳細を取得してください。
title文字列です。yesイシューのタイトル
weight 整数。いいえイシューの重み。有効な値は0以上です。
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/4/issues?title=Issues%20with%20auth&labels=bug"

応答例

{
   "project_id" : 4,
   "id" : 84,
   "created_at" : "2016-01-07T12:44:33.959Z",
   "iid" : 14,
   "title" : "Issues with auth",
   "state" : "opened",
   "assignees" : [],
   "assignee" : null,
   "type" : "ISSUE",
   "labels" : [
      "bug"
   ],
   "upvotes": 4,
   "downvotes": 0,
   "merge_requests_count": 0,
   "author" : {
      "name" : "Alexandra Bashirian",
      "avatar_url" : null,
      "state" : "active",
      "web_url" : "https://gitlab.example.com/eileen.lowe",
      "id" : 18,
      "username" : "eileen.lowe"
   },
   "description" : null,
   "updated_at" : "2016-01-07T12:44:33.959Z",
   "closed_at" : null,
   "closed_by" : null,
   "milestone" : null,
   "subscribed" : true,
   "user_notes_count": 0,
   "due_date": null,
   "web_url": "http://gitlab.example.com/my-group/my-project/issues/14",
   "references": {
     "short": "#14",
     "relative": "#14",
     "full": "my-group/my-project#14"
   },
   "time_stats": {
      "time_estimate": 0,
      "total_time_spent": 0,
      "human_time_estimate": null,
      "human_total_time_spent": null
   },
   "confidential": false,
   "discussion_locked": false,
   "issue_type": "issue",
   "severity": "UNKNOWN",
   "_links": {
      "self": "http://gitlab.example.com/api/v4/projects/1/issues/2",
      "notes": "http://gitlab.example.com/api/v4/projects/1/issues/2/notes",
      "award_emoji": "http://gitlab.example.com/api/v4/projects/1/issues/2/award_emoji",
      "project": "http://gitlab.example.com/api/v4/projects/1",
      "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
   },
   "task_completion_status":{
      "count":0,
      "completed_count":0
   }
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

{
   "project_id" : 4,
   "description" : null,
   "weight": null,
   ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "on_track",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

レート制限

不正使用を避けるため、ユーザは1分あたりのCreate リクエスト数を制限することができます。イシューのレート制限を参照してください。

イシューの編集

weight プロパティは13.9でGitLab Premiumに移動しました。

既存のプロジェクトイシューを更新します。この呼び出しは、イシューをクローズしたようにマークするためにも使われます。

要求を成功させるには、以下のパラメータの少なくとも1つが必要です:

  • :assignee_id
  • :assignee_ids
  • :confidential
  • :created_at
  • :description
  • :discussion_locked
  • :due_date
  • :issue_type
  • :labels
  • :milestone_id
  • :state_event
  • :title
PUT /projects/:id/issues/:issue_iid
属性種類必須説明
add_labels文字列です。いいえイシューに追加するラベル名をカンマ区切りで指定します。
assignee_ids整数配列。いいえイシューを割り当てるユーザのID。すべての担当者の割り当てを解除するには、0 、または空の値を指定してください。
confidentialbooleanいいえ機密扱いのイシューの更新
description文字列です。いいえイシューの説明。1,048,576文字に制限されています。
discussion_lockedbooleanいいえイシューのディスカッションがロックされているかどうかを示すフラグ。ディスカッションがロックされている場合、プロジェクト・メンバーのみがコメントを追加または編集できます。
due_date文字列です。いいえ期日。YYYY-MM-DD のような形式の日付時刻文字列。2016-03-11
epic_id 整数。いいえイシューを追加するエピックID。有効な値は0以上です。
epic_iid 整数。いいえイシューを追加するエピックのIID。有効な値は0以上です(非推奨。APIバージョン5で削除予定)。
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
issue_type文字列です。いいえイシューの種類を更新します。issue,incident,test_case のいずれかです。
labels文字列です。いいえイシューのラベル名をカンマ区切りで指定します。すべてのラベルの割り当てを解除するには空文字列を設定します。
milestone_id整数。いいえイシューを割り当てるマイルストーンのグローバルID。マイルストーンの割り当てを解除するには、0 に設定するか、空の値を指定してください。
remove_labels文字列です。いいえイシューから削除するラベル名をカンマ区切りで指定します。
state_event文字列です。いいえイシューの状態イベント。イシューをクローズするにはclose 、再開するにはreopen
title文字列です。いいえイシューのタイトル
updated_at文字列です。いいえイシューが更新された日付。ISO 8601形式の日付時刻文字列、例:2016-03-11T03:45:40Z (管理者またはプロジェクト・オーナーの権限が必要です)。空文字列やNULL値は受け付けられません。
weight 整数。いいえイシューの重み。有効な値は0以上です。
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/4/issues/85?state_event=close"

応答例

{
   "created_at" : "2016-01-07T12:46:01.410Z",
   "author" : {
      "name" : "Alexandra Bashirian",
      "avatar_url" : null,
      "username" : "eileen.lowe",
      "id" : 18,
      "state" : "active",
      "web_url" : "https://gitlab.example.com/eileen.lowe"
   },
   "state" : "closed",
   "title" : "Issues with auth",
   "project_id" : 4,
   "description" : null,
   "updated_at" : "2016-01-07T12:55:16.213Z",
   "closed_at" : "2016-01-08T12:55:16.213Z",
   "closed_by" : {
      "state" : "active",
      "web_url" : "https://gitlab.example.com/root",
      "avatar_url" : null,
      "username" : "root",
      "id" : 1,
      "name" : "Administrator"
    },
   "iid" : 15,
   "labels" : [
      "bug"
   ],
   "upvotes": 4,
   "downvotes": 0,
   "merge_requests_count": 0,
   "id" : 85,
   "assignees" : [],
   "assignee" : null,
   "milestone" : null,
   "subscribed" : true,
   "user_notes_count": 0,
   "due_date": "2016-07-22",
   "web_url": "http://gitlab.example.com/my-group/my-project/issues/15",
   "references": {
     "short": "#15",
     "relative": "#15",
     "full": "my-group/my-project#15"
   },
   "time_stats": {
      "time_estimate": 0,
      "total_time_spent": 0,
      "human_time_estimate": null,
      "human_total_time_spent": null
   },
   "confidential": false,
   "discussion_locked": false,
   "issue_type": "issue",
   "severity": "UNKNOWN",
   "_links": {
      "self": "http://gitlab.example.com/api/v4/projects/1/issues/2",
      "notes": "http://gitlab.example.com/api/v4/projects/1/issues/2/notes",
      "award_emoji": "http://gitlab.example.com/api/v4/projects/1/issues/2/award_emoji",
      "project": "http://gitlab.example.com/api/v4/projects/1",
      "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"

   },
   "task_completion_status":{
      "count":0,
      "completed_count":0
   }
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

{
   "project_id" : 4,
   "description" : null,
   "weight": null,
   ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "on_track",
      ...
   }
]
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees として表示するようになりました。

イシューの削除

管理者とプロジェクトオーナー専用です。イシューを削除します。

DELETE /projects/:id/issues/:issue_iid
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/4/issues/85"

イシューの並び替え

GitLab 13.2 で導入されました

手動でイシューを並べ替えたときの結果を見ることができます。

PUT /projects/:id/issues/:issue_iid/reorder
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
move_after_id整数。いいえこのイシューの後に配置されるべきプロジェクトのグローバルID
move_before_id整数。いいえこのイシューの前に置かれるべきプロジェクトのグローバルID
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/4/issues/85/reorder?move_after_id=51&move_before_id=92"

イシューの移動

イシューを別のプロジェクトに移動します。移動先のプロジェクトが移動元のプロジェクトである場合や、ユーザーの権限が不十分な場合は、ステータスコード400 のエラーメッセージが返されます。

同じ名前のラベルまたはマイルストーンが移動先のプロジェクトにも存在する場合、そのラベルまたはマイルストーンは移動されるイシューに割り当てられます。

POST /projects/:id/issues/:issue_iid/move
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
to_project_id整数。yes新規プロジェクトのID
curl --header "PRIVATE-TOKEN: <your_access_token>" --form to_project_id=5 "https://gitlab.example.com/api/v4/projects/4/issues/85/move"

応答例

{
  "id": 92,
  "iid": 11,
  "project_id": 5,
  "title": "Sit voluptas tempora quisquam aut doloribus et.",
  "description": "Repellat voluptas quibusdam voluptatem exercitationem.",
  "state": "opened",
  "created_at": "2016-04-05T21:41:45.652Z",
  "updated_at": "2016-04-07T12:20:17.596Z",
  "closed_at": null,
  "closed_by": null,
  "labels": [],
  "upvotes": 4,
  "downvotes": 0,
  "merge_requests_count": 0,
  "milestone": null,
  "assignees": [{
    "name": "Miss Monserrate Beier",
    "username": "axel.block",
    "id": 12,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/axel.block"
  }],
  "assignee": {
    "name": "Miss Monserrate Beier",
    "username": "axel.block",
    "id": 12,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/axel.block"
  },
  "type" : "ISSUE",
  "author": {
    "name": "Kris Steuber",
    "username": "solon.cremin",
    "id": 10,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/7a190fecbaa68212a4b68aeb6e3acd10?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/solon.cremin"
  },
  "due_date": null,
  "web_url": "http://gitlab.example.com/my-group/my-project/issues/11",
  "references": {
    "short": "#11",
    "relative": "#11",
    "full": "my-group/my-project#11"
  },
  "time_stats": {
    "time_estimate": 0,
    "total_time_spent": 0,
    "human_time_estimate": null,
    "human_total_time_spent": null
  },
  "confidential": false,
  "discussion_locked": false,
  "issue_type": "issue",
  "severity": "UNKNOWN",
  "_links": {
    "self": "http://gitlab.example.com/api/v4/projects/1/issues/2",
    "notes": "http://gitlab.example.com/api/v4/projects/1/issues/2/notes",
    "award_emoji": "http://gitlab.example.com/api/v4/projects/1/issues/2/award_emoji",
    "project": "http://gitlab.example.com/api/v4/projects/1",
    "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
  },
  "task_completion_status":{
     "count":0,
     "completed_count":0
  }
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

{
  "project_id": 5,
  "description": "Repellat voluptas quibusdam voluptatem exercitationem.",
  "weight": null,
  ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "on_track",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

イシューのクローン

指定されたプロジェクトにイシューをクローンします。ユーザーに十分な権限がない場合、ステータスコード400 のエラーメッセージが返されます。

ターゲット・プロジェクトにラベルやマイルストーンなどの同等の基準が含まれている限り、可能な限り多くのデータをコピーします。

POST /projects/:id/issues/:issue_iid/clone
属性種類必須説明
id整数/文字列 {チェックサークル}はい認証ユーザーが所有するプロジェクトのIDまたはURLエンコードされたパス
issue_iid整数。 {チェックサークル}はいプロジェクトのイシューの内部ID。
to_project_id整数。 {チェックサークル}はい新しいプロジェクトのID。
with_notesboolean {点線円}いいえ 注釈付きのイシューをクローンします。デフォルトはfalse です。
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/1/clone?with_notes=true&to_project_id=6"

応答例

{
  "id":290,
  "iid":1,
  "project_id":143,
  "title":"foo",
  "description":"closed",
  "state":"opened",
  "created_at":"2021-09-14T22:24:11.696Z",
  "updated_at":"2021-09-14T22:24:11.696Z",
  "closed_at":null,
  "closed_by":null,
  "labels":[

  ],
  "milestone":null,
  "assignees":[
    {
      "id":179,
      "name":"John Doe2",
      "username":"john",
      "state":"active",
      "avatar_url":"https://www.gravatar.com/avatar/10fc7f102be8de7657fb4d80898bbfe3?s=80\u0026d=identicon",
      "web_url":"https://gitlab.example.com/john"
    }
  ],
  "author":{
    "id":179,
    "name":"John Doe2",
    "username":"john",
    "state":"active",
    "avatar_url":"https://www.gravatar.com/avatar/10fc7f102be8de7657fb4d80898bbfe3?s=80\u0026d=identicon",
    "web_url":"https://gitlab.example.com/john"
  },
  "type":"ISSUE",
  "assignee":{
    "id":179,
    "name":"John Doe2",
    "username":"john",
    "state":"active",
    "avatar_url":"https://www.gravatar.com/avatar/10fc7f102be8de7657fb4d80898bbfe3?s=80\u0026d=identicon",
    "web_url":"https://gitlab.example.com/john"
  },
  "user_notes_count":1,
  "merge_requests_count":0,
  "upvotes":0,
  "downvotes":0,
  "due_date":null,
  "confidential":false,
  "discussion_locked":null,
  "issue_type":"issue",
  "severity": "UNKNOWN",
  "web_url":"https://gitlab.example.com/namespace1/project2/-/issues/1",
  "time_stats":{
    "time_estimate":0,
    "total_time_spent":0,
    "human_time_estimate":null,
    "human_total_time_spent":null
  },
  "task_completion_status":{
    "count":0,
    "completed_count":0
  },
  "blocking_issues_count":0,
  "has_tasks":false,
  "_links":{
    "self":"https://gitlab.example.com/api/v4/projects/143/issues/1",
    "notes":"https://gitlab.example.com/api/v4/projects/143/issues/1/notes",
    "award_emoji":"https://gitlab.example.com/api/v4/projects/143/issues/1/award_emoji",
    "project":"https://gitlab.example.com/api/v4/projects/143",
    "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
  },
  "references":{
    "short":"#1",
    "relative":"#1",
    "full":"namespace1/project2#1"
  },
  "subscribed":true,
  "moved_to_id":null,
  "service_desk_reply_to":null
}

イシューの登録

通知を受け取るために、認証済みユーザをイシューに登録します。ユーザーがすでにイシューを購読している場合、ステータスコード304 が返されます。

POST /projects/:id/issues/:issue_iid/subscribe
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/subscribe"

応答例

{
  "id": 92,
  "iid": 11,
  "project_id": 5,
  "title": "Sit voluptas tempora quisquam aut doloribus et.",
  "description": "Repellat voluptas quibusdam voluptatem exercitationem.",
  "state": "opened",
  "created_at": "2016-04-05T21:41:45.652Z",
  "updated_at": "2016-04-07T12:20:17.596Z",
  "closed_at": null,
  "closed_by": null,
  "labels": [],
  "upvotes": 4,
  "downvotes": 0,
  "merge_requests_count": 0,
  "milestone": null,
  "assignees": [{
    "name": "Miss Monserrate Beier",
    "username": "axel.block",
    "id": 12,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/axel.block"
  }],
  "assignee": {
    "name": "Miss Monserrate Beier",
    "username": "axel.block",
    "id": 12,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/46f6f7dc858ada7be1853f7fb96e81da?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/axel.block"
  },
  "type" : "ISSUE",
  "author": {
    "name": "Kris Steuber",
    "username": "solon.cremin",
    "id": 10,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/7a190fecbaa68212a4b68aeb6e3acd10?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/solon.cremin"
  },
  "due_date": null,
  "web_url": "http://gitlab.example.com/my-group/my-project/issues/11",
  "references": {
    "short": "#11",
    "relative": "#11",
    "full": "my-group/my-project#11"
  },
  "time_stats": {
    "time_estimate": 0,
    "total_time_spent": 0,
    "human_time_estimate": null,
    "human_total_time_spent": null
  },
  "confidential": false,
  "discussion_locked": false,
  "issue_type": "issue",
  "severity": "UNKNOWN",
  "_links": {
    "self": "http://gitlab.example.com/api/v4/projects/1/issues/2",
    "notes": "http://gitlab.example.com/api/v4/projects/1/issues/2/notes",
    "award_emoji": "http://gitlab.example.com/api/v4/projects/1/issues/2/award_emoji",
    "project": "http://gitlab.example.com/api/v4/projects/1",
    "closed_as_duplicate_of": "http://gitlab.example.com/api/v4/projects/1/issues/75"
  },
  "task_completion_status":{
     "count":0,
     "completed_count":0
  }
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、weight プロパティが含まれています:

{
  "project_id": 5,
  "description": "Repellat voluptas quibusdam voluptatem exercitationem.",
  "weight": null,
  ...
}

GitLab Premium または Ultimate のユーザーが作成したイシューには、epic プロパティが含まれています:

{
   "project_id" : 4,
   "description" : "Omnis vero earum sunt corporis dolor et placeat.",
   "epic_iid" : 5, //deprecated, use `iid` of the `epic` attribute
   "epic": {
     "id" : 42,
     "iid" : 5,
     "title": "My epic epic",
     "url" : "/groups/h5bp/-/epics/5",
     "group_id": 8
   },
   ...
}

GitLab Ultimate のユーザーが作成したイシューには、health_status プロパティが含まれます:

[
   {
      "project_id" : 4,
      "description" : "Omnis vero earum sunt corporis dolor et placeat.",
      "health_status": "on_track",
      ...
   }
]
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees
caution
epic_iid 属性は非推奨で、APIバージョン5で削除される予定です。代わりにepic 属性のiid をご利用ください。

イシューの配信停止

認証済みユーザをイシューから退会させ、そのイシューからの通知を受け取らないようにします。ユーザーがイシューを購読していない場合、ステータスコード304 が返されます。

POST /projects/:id/issues/:issue_iid/unsubscribe
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/unsubscribe"

応答例

{
  "id": 93,
  "iid": 12,
  "project_id": 5,
  "title": "Incidunt et rerum ea expedita iure quibusdam.",
  "description": "Et cumque architecto sed aut ipsam.",
  "state": "opened",
  "created_at": "2016-04-05T21:41:45.217Z",
  "updated_at": "2016-04-07T13:02:37.905Z",
  "labels": [],
  "upvotes": 4,
  "downvotes": 0,
  "merge_requests_count": 0,
  "milestone": null,
  "assignee": {
    "name": "Edwardo Grady",
    "username": "keyon",
    "id": 21,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/3e6f06a86cf27fa8b56f3f74f7615987?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/keyon"
  },
  "type" : "ISSUE",
  "closed_at": null,
  "closed_by": null,
  "author": {
    "name": "Vivian Hermann",
    "username": "orville",
    "id": 11,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/5224fd70153710e92fb8bcf79ac29d67?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/orville"
  },
  "subscribed": false,
  "due_date": null,
  "web_url": "http://gitlab.example.com/my-group/my-project/issues/12",
  "references": {
    "short": "#12",
    "relative": "#12",
    "full": "my-group/my-project#12"
  },
  "confidential": false,
  "discussion_locked": false,
  "issue_type": "issue",
  "severity": "UNKNOWN",
  "task_completion_status":{
     "count":0,
     "completed_count":0
  }
}

To-Do 項目の作成

イシューの現在のユーザーのToDo項目を手動で作成します。そのイシューにユーザーのToDo項目がすでに存在する場合は、ステータスコード304

POST /projects/:id/issues/:issue_iid/todo
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/todo"

応答例

{
  "id": 112,
  "project": {
    "id": 5,
    "name": "GitLab CI/CD",
    "name_with_namespace": "GitLab Org / GitLab CI/CD",
    "path": "gitlab-ci",
    "path_with_namespace": "gitlab-org/gitlab-ci"
  },
  "author": {
    "name": "Administrator",
    "username": "root",
    "id": 1,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
    "web_url": "https://gitlab.example.com/root"
  },
  "action_name": "marked",
  "target_type": "Issue",
  "target": {
    "id": 93,
    "iid": 10,
    "project_id": 5,
    "title": "Vel voluptas atque dicta mollitia adipisci qui at.",
    "description": "Tempora laboriosam sint magni sed voluptas similique.",
    "state": "closed",
    "created_at": "2016-06-17T07:47:39.486Z",
    "updated_at": "2016-07-01T11:09:13.998Z",
    "labels": [],
    "milestone": {
      "id": 26,
      "iid": 1,
      "project_id": 5,
      "title": "v0.0",
      "description": "Accusantium nostrum rerum quae quia quis nesciunt suscipit id.",
      "state": "closed",
      "created_at": "2016-06-17T07:47:33.832Z",
      "updated_at": "2016-06-17T07:47:33.832Z",
      "due_date": null
    },
    "assignees": [{
      "name": "Jarret O'Keefe",
      "username": "francisca",
      "id": 14,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/a7fa515d53450023c83d62986d0658a8?s=80&d=identicon",
      "web_url": "https://gitlab.example.com/francisca"
    }],
    "assignee": {
      "name": "Jarret O'Keefe",
      "username": "francisca",
      "id": 14,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/a7fa515d53450023c83d62986d0658a8?s=80&d=identicon",
      "web_url": "https://gitlab.example.com/francisca"
    },
    "type" : "ISSUE",
    "author": {
      "name": "Maxie Medhurst",
      "username": "craig_rutherford",
      "id": 12,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/a0d477b3ea21970ce6ffcbb817b0b435?s=80&d=identicon",
      "web_url": "https://gitlab.example.com/craig_rutherford"
    },
    "subscribed": true,
    "user_notes_count": 7,
    "upvotes": 0,
    "downvotes": 0,
    "merge_requests_count": 0,
    "due_date": null,
    "web_url": "http://gitlab.example.com/my-group/my-project/issues/10",
    "references": {
      "short": "#10",
      "relative": "#10",
      "full": "my-group/my-project#10"
    },
    "confidential": false,
    "discussion_locked": false,
    "issue_type": "issue",
    "severity": "UNKNOWN",
    "task_completion_status":{
       "count":0,
       "completed_count":0
    }
  },
  "target_url": "https://gitlab.example.com/gitlab-org/gitlab-ci/issues/10",
  "body": "Vel voluptas atque dicta mollitia adipisci qui at.",
  "state": "pending",
  "created_at": "2016-07-01T11:09:13.992Z"
}
caution
assignee カラムは非推奨です。GitLab EE APIに準拠するため、シングルサイズの配列assignees

イシューをエピックに昇格させる

/promote クイックアクションでコメントを追加することで、イシューをエピックに昇格させます。

イシューをエピックに昇格させる詳細については、エピックの管理を参照してください。

POST /projects/:id/issues/:issue_iid/notes

サポートされる属性:

属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
body文字列yesメモの内容。改行の先頭に/promote を含む必要があります。

リクエストの例

curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/11/notes?body=Lets%20promote%20this%20to%20an%20epic%0A%0A%2Fpromote"

応答例

{
   "id":699,
   "type":null,
   "body":"Lets promote this to an epic",
   "attachment":null,
   "author": {
      "id":1,
      "name":"Alexandra Bashirian",
      "username":"eileen.lowe",
      "state":"active",
      "avatar_url":"https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url":"https://gitlab.example.com/eileen.lowe"
   },
   "created_at":"2020-12-03T12:27:17.844Z",
   "updated_at":"2020-12-03T12:27:17.844Z",
   "system":false,
   "noteable_id":461,
   "noteable_type":"Issue",
   "resolvable":false,
   "confidential":false,
   "noteable_iid":33,
   "commands_changes": {
      "promote_to_epic":true
   }
}

イシューの見積もり時間の設定

イシューの作業予定時間を設定します。

POST /projects/:id/issues/:issue_iid/time_estimate
属性種類必須説明
duration文字列です。yes人間の形式での持続時間:3h30m
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/time_estimate?duration=3h30m"

応答例

{
  "human_time_estimate": "3h 30m",
  "human_total_time_spent": null,
  "time_estimate": 12600,
  "total_time_spent": 0
}

イシューの見積もり時間をリセットします。

このイシューの推定時間を0秒にリセットします。

POST /projects/:id/issues/:issue_iid/reset_time_estimate
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/reset_time_estimate"

応答例

{
  "human_time_estimate": null,
  "human_total_time_spent": null,
  "time_estimate": 0,
  "total_time_spent": 0
}

イシューに費やした時間を追加します。

このイシューの使用済み時間を追加します。

POST /projects/:id/issues/:issue_iid/add_spent_time
属性種類必須説明
duration文字列です。yes人間の形式での持続時間:3h30m
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
summary文字列です。いいえ時間の使い方の概要
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/add_spent_time?duration=1h"

応答例

{
  "human_time_estimate": null,
  "human_total_time_spent": "1h",
  "time_estimate": 0,
  "total_time_spent": 3600
}

イシューに費やされた時間のリセット

このイシューの合計使用時間を0秒にリセットします。

POST /projects/:id/issues/:issue_iid/reset_spent_time
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/reset_spent_time"

応答例

{
  "human_time_estimate": null,
  "human_total_time_spent": null,
  "time_estimate": 0,
  "total_time_spent": 0
}

時間追跡統計の取得

プロジェクトが非公開であったり、イシューが機密であったりする場合は、作成者の認証が必要です。この場合、個人アクセストークンを使用するのが望ましい方法です。

GET /projects/:id/issues/:issue_iid/time_stats
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/time_stats"

応答例

{
  "human_time_estimate": "2h",
  "human_total_time_spent": "1h",
  "time_estimate": 7200,
  "total_time_spent": 3600
}

イシューに関連するすべてのマージリクエストを取得します。

プロジェクトが非公開であったり、イシューが機密であったりする場合は、作成者の認証が必要です。この場合、個人アクセストークンを使用するのが望ましい方法です。

GET /projects/:id/issues/:issue_iid/related_merge_requests
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/11/related_merge_requests"

応答例

[
  {
    "id": 29,
    "iid": 11,
    "project_id": 1,
    "title": "Provident eius eos blanditiis consequatur neque odit.",
    "description": "Ut consequatur ipsa aspernatur quisquam voluptatum fugit. Qui harum corporis quo fuga ut incidunt veritatis. Autem necessitatibus et harum occaecati nihil ea.\r\n\r\ntwitter/flight#8",
    "state": "opened",
    "created_at": "2018-09-18T14:36:15.510Z",
    "updated_at": "2018-09-19T07:45:13.089Z",
    "closed_by": null,
    "closed_at": null,
    "target_branch": "v2.x",
    "source_branch": "so_long_jquery",
    "user_notes_count": 9,
    "upvotes": 0,
    "downvotes": 0,
    "author": {
      "id": 14,
      "name": "Verna Hills",
      "username": "lawanda_reinger",
      "state": "active",
      "avatar_url": "https://www.gravatar.com/avatar/de68a91aeab1cff563795fb98a0c2cc0?s=80&d=identicon",
      "web_url": "https://gitlab.example.com/lawanda_reinger"
    },
    "assignee": {
      "id": 19,
      "name": "Jody Baumbach",
      "username": "felipa.kuvalis",
      "state": "active",
      "avatar_url": "https://www.gravatar.com/avatar/6541fc75fc4e87e203529bd275fafd07?s=80&d=identicon",
      "web_url": "https://gitlab.example.com/felipa.kuvalis"
    },
    "source_project_id": 1,
    "target_project_id": 1,
    "labels": [],
    "draft": false,
    "work_in_progress": false,
    "milestone": {
      "id": 27,
      "iid": 2,
      "project_id": 1,
      "title": "v1.0",
      "description": "Et tenetur voluptatem minima doloribus vero dignissimos vitae.",
      "state": "active",
      "created_at": "2018-09-18T14:35:44.353Z",
      "updated_at": "2018-09-18T14:35:44.353Z",
      "due_date": null,
      "start_date": null,
      "web_url": "https://gitlab.example.com/twitter/flight/milestones/2"
    },
    "merge_when_pipeline_succeeds": false,
    "merge_status": "cannot_be_merged",
    "sha": "3b7b528e9353295c1c125dad281ac5b5deae5f12",
    "merge_commit_sha": null,
    "squash_commit_sha": null,
    "discussion_locked": null,
    "should_remove_source_branch": null,
    "force_remove_source_branch": false,
    "reference": "!11",
    "web_url": "https://gitlab.example.com/twitter/flight/merge_requests/4",
    "references": {
      "short": "!4",
      "relative": "!4",
      "full": "twitter/flight!4"
    },
    "time_stats": {
      "time_estimate": 0,
      "total_time_spent": 0,
      "human_time_estimate": null,
      "human_total_time_spent": null
    },
    "squash": false,
    "task_completion_status": {
      "count": 0,
      "completed_count": 0
    },
    "changes_count": "10",
    "latest_build_started_at": "2018-12-05T01:16:41.723Z",
    "latest_build_finished_at": "2018-12-05T02:35:54.046Z",
    "first_deployed_to_production_at": null,
    "pipeline": {
      "id": 38980952,
      "sha": "81c6a84c7aebd45a1ac2c654aa87f11e32338e0a",
      "ref": "test-branch",
      "status": "success",
      "web_url": "https://gitlab.com/gitlab-org/gitlab/pipelines/38980952"
    },
    "head_pipeline": {
      "id": 38980952,
      "sha": "81c6a84c7aebd45a1ac2c654aa87f11e32338e0a",
      "ref": "test-branch",
      "status": "success",
      "web_url": "https://gitlab.example.com/twitter/flight/pipelines/38980952",
      "before_sha": "3c738a37eb23cf4c0ed0d45d6ddde8aad4a8da51",
      "tag": false,
      "yaml_errors": null,
      "user": {
        "id": 19,
        "name": "Jody Baumbach",
        "username": "felipa.kuvalis",
        "state": "active",
        "avatar_url": "https://www.gravatar.com/avatar/6541fc75fc4e87e203529bd275fafd07?s=80&d=identicon",
        "web_url": "https://gitlab.example.com/felipa.kuvalis"
      },
      "created_at": "2018-12-05T01:16:13.342Z",
      "updated_at": "2018-12-05T02:35:54.086Z",
      "started_at": "2018-12-05T01:16:41.723Z",
      "finished_at": "2018-12-05T02:35:54.046Z",
      "committed_at": null,
      "duration": 4436,
      "coverage": "46.68",
      "detailed_status": {
        "icon": "status_warning",
        "text": "passed",
        "label": "passed with warnings",
        "group": "success-with-warnings",
        "tooltip": "passed",
        "has_details": true,
        "details_path": "/twitter/flight/pipelines/38",
        "illustration": null,
        "favicon": "https://gitlab.example.com/assets/ci_favicons/favicon_status_success-8451333011eee8ce9f2ab25dc487fe24a8758c694827a582f17f42b0a90446a2.png"
      }
    },
    "diff_refs": {
      "base_sha": "d052d768f0126e8cddf80afd8b1eb07f406a3fcb",
      "head_sha": "81c6a84c7aebd45a1ac2c654aa87f11e32338e0a",
      "start_sha": "d052d768f0126e8cddf80afd8b1eb07f406a3fcb"
    },
    "merge_error": null,
    "user": {
      "can_merge": true
    }
  }
]

マージ時に特定のイシューをクローズするマージリクエストのリスト

特定のイシューをマージ時にクローズするマージリクエストをすべて取得します。

プロジェクトが非公開であったり、イシューが機密であったりする場合は、作成者の認証が必要です。この場合、個人アクセストークンを使用するのが望ましい方法です。

GET /projects/:id/issues/:issue_iid/closed_by
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/11/closed_by"

応答例

[
  {
    "id": 6471,
    "iid": 6432,
    "project_id": 1,
    "title": "add a test for cgi lexer options",
    "description": "closes #11",
    "state": "opened",
    "created_at": "2017-04-06T18:33:34.168Z",
    "updated_at": "2017-04-09T20:10:24.983Z",
    "target_branch": "master",
    "source_branch": "feature.custom-highlighting",
    "upvotes": 0,
    "downvotes": 0,
    "author": {
      "name": "Administrator",
      "username": "root",
      "id": 1,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url": "https://gitlab.example.com/root"
    },
    "assignee": null,
    "source_project_id": 1,
    "target_project_id": 1,
    "closed_at": null,
    "closed_by": null,
    "labels": [],
    "draft": false,
    "work_in_progress": false,
    "milestone": null,
    "merge_when_pipeline_succeeds": false,
    "merge_status": "unchecked",
    "sha": "5a62481d563af92b8e32d735f2fa63b94e806835",
    "merge_commit_sha": null,
    "squash_commit_sha": null,
    "user_notes_count": 1,
    "should_remove_source_branch": null,
    "force_remove_source_branch": false,
    "web_url": "https://gitlab.example.com/gitlab-org/gitlab-test/merge_requests/6432",
    "reference": "!6432",
    "references": {
      "short": "!6432",
      "relative": "!6432",
      "full": "gitlab-org/gitlab-test!6432"
    },
    "time_stats": {
      "time_estimate": 0,
      "total_time_spent": 0,
      "human_time_estimate": null,
      "human_total_time_spent": null
    }
  }
]

イシューに関する参加者

プロジェクトが非公開であったり、イシューが機密であったりする場合は、作成者の認証が必要です。この場合、個人アクセストークンを使用するのが望ましい方法です。

GET /projects/:id/issues/:issue_iid/participants
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/participants"

応答例

[
  {
    "id": 1,
    "name": "John Doe1",
    "username": "user1",
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/c922747a93b40d1ea88262bf1aebee62?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/user1"
  },
  {
    "id": 5,
    "name": "John Doe5",
    "username": "user5",
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/4aea8cf834ed91844a2da4ff7ae6b491?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/user5"
  }
]

イシューに関するコメント

コメントはノートリソースから行えます。

ユーザーエージェントの詳細の取得

管理者のみ利用可能です。

GET /projects/:id/issues/:issue_iid/user_agent_detail
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/user_agent_detail"

応答例

{
  "user_agent": "AppleWebKit/537.36",
  "ip_address": "127.0.0.1",
  "akismet_submitted": false
}

イシュー状態イベントのリスト

どの状態が設定され、誰がそれを行い、いつそれが起こったかを追跡するには、リソース状態イベントAPIをチェックしてください。

メトリック画像のアップロード

インシデント・イシューでのみ利用可能です。

POST /projects/:id/issues/:issue_iid/metric_images
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
fileファイルyesアップロードする画像ファイル
url文字列です。いいえメトリクス情報を表示するためのURL
url_text文字列です。いいえ画像またはURLの説明
curl --header "PRIVATE-TOKEN: <your_access_token>" --form 'file=@/path/to/file.png' \
--form 'url=http://example.com' --form 'url_text=Example website' "https://gitlab.example.com/api/v4/projects/5/issues/93/metric_images"

応答例

{
    "id": 23,
    "created_at": "2020-11-13T00:06:18.084Z",
    "filename": "file.png",
    "file_path": "/uploads/-/system/issuable_metric_image/file/23/file.png",
    "url": "http://example.com",
    "url_text": "Example website"
}

メトリック画像のリスト

インシデント・イシューでのみ利用可能です。

GET /projects/:id/issues/:issue_iid/metric_images
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/issues/93/metric_images"

応答例

[
    {
        "id": 17,
        "created_at": "2020-11-12T20:07:58.156Z",
        "filename": "sample_2054",
        "file_path": "/uploads/-/system/issuable_metric_image/file/17/sample_2054.png",
        "url": "example.com/metric"
    },
    {
        "id": 18,
        "created_at": "2020-11-12T20:14:26.441Z",
        "filename": "sample_2054",
        "file_path": "/uploads/-/system/issuable_metric_image/file/18/sample_2054.png",
        "url": "example.com/metric"
    }
]

メトリック画像の更新

インシデント・イシューでのみ利用可能です。

PUT /projects/:id/issues/:issue_iid/metric_images/:image_id
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
image_id整数。yes画像のID
url文字列です。いいえメトリクス情報を表示するためのURL
url_text文字列です。いいえ画像またはURLの説明
curl --header "PRIVATE-TOKEN: <your_access_token>" --request PUT  --form 'url=http://example.com' --form 'url_text=Example website' "https://gitlab.example.com/api/v4/projects/5/issues/93/metric_images/1"

応答例

{
    "id": 23,
    "created_at": "2020-11-13T00:06:18.084Z",
    "filename": "file.png",
    "file_path": "/uploads/-/system/issuable_metric_image/file/23/file.png",
    "url": "http://example.com",
    "url_text": "Example website"
}

メトリクス画像の削除

インシデント・イシューでのみ利用可能です。

DELETE /projects/:id/issues/:issue_iid/metric_images/:image_id
属性種類必須説明
id整数/文字列yes認証ユーザーが所有するプロジェクトのグローバルIDまたはURLエンコードされたパス
issue_iid整数。yesプロジェクトのイシューの内部ID
image_id整数。yes画像のID
curl --header "PRIVATE-TOKEN: <your_access_token>" --request DELETE "https://gitlab.example.com/api/v4/projects/5/issues/93/metric_images/1"

以下のステータスコードを返すことができます:

  • 204 No Content画像の削除に成功した場合
  • 400 Bad Request画像が削除できなかった場合は