ドラフトノートAPI

ドラフトノートはマージリクエストに対する保留中の未公開コメントです。ディスカッションを開始することも、既存のディスカッションに返信として関連付けることもできます。公開されるまでは、作成者のみが閲覧可能です。

すべてのマージリクエストドラフトノートの一覧

一つのマージリクエストのすべての下書きメモの一覧を取得します。

GET /projects/:id/merge_requests/:merge_request_iid/draft_notes
属性種類必須説明
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
merge_request_iid整数。yesプロジェクトマージリクエストのIID
[{
  id: 5,
  author_id: 23,
  merge_request_id: 11,
  resolve_discussion: false,
  discussion_id: nil,
  note: "Example title",
  commit_id: nil,
  line_code: nil,
  position:
  {
    base_sha: nil,
    start_sha: nil,
    head_sha: nil,
    old_path: nil,
    new_path: nil,
    position_type: "text",
    old_line: nil,
    new_line: nil,
    line_range: nil
  }
}]
curl --header "PRIVATE-TOKEN: <your_access_token>" \
     "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes"

下書きメモの取得

指定されたマージリクエストのドラフトノートを返します。

GET /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id
属性種類必須説明
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
draft_note_id整数。yes下書きノートのID。
merge_request_iid整数。yesプロジェクトマージリクエストのIID。
{
  id: 5,
  author_id: 23,
  merge_request_id: 11,
  resolve_discussion: false,
  discussion_id: nil,
  note: "Example title",
  commit_id: nil,
  line_code: nil,
  position:
  {
    base_sha: nil,
    start_sha: nil,
    head_sha: nil,
    old_path: nil,
    new_path: nil,
    position_type: "text",
    old_line: nil,
    new_line: nil,
    line_range: nil
  }
}
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes/5"

下書きノートの作成

指定されたマージリクエストの下書きノートを作成します。

POST /projects/:id/merge_requests/:merge_request_iid/draft_notes
属性種類必須説明
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
merge_request_iid整数。yesプロジェクトマージリクエストのIID。
note文字列です。yesメモの内容
commit_id文字列です。いいえドラフトノートを関連付けるコミットのSHA。
in_reply_to_discussion_id文字列です。いいえドラフトノートが返信するディスカッションのID。
resolve_discussionbooleanいいえ関連する議論は解決されるべきです。
position[base_sha]文字列です。yesソースブランチのベースコミットSHA。
position[head_sha]文字列です。yesこのマージリクエストのHEADを参照するSHA。
position[start_sha]文字列です。yesターゲットブランチのコミットを参照する SHA。
position[new_path]文字列です。yes (ポジションタイプがtext の場合)変更後のファイルパス。
position[old_path]文字列です。yes (ポジションタイプがtext の場合)変更前のファイルパス。
position[position_type]文字列です。yes位置参照のタイプ。指定可能な値:text またはimage
positionハッシュいいえ差分ノート作成時の位置
position[new_line]整数。いいえ text 差分ノートの場合、変更後の行番号。
position[old_line]整数。いいえ text 差分ノートの場合、変更前の行番号。
position[line_range]ハッシュいいえ複数行の差分音符の行範囲。
position[width]整数。いいえ image 差分ノートの場合、画像の幅。
position[height]整数。いいえ image 差分ノートの場合、画像の高さ。
position[x]フロートいいえ image 差分ノートの場合、X座標。
position[y]フロートいいえ image 差分ノートのY座標。
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes?note=note

既存の草稿ノートの修正

指定されたマージリクエストのドラフトノートを修正します。

PUT /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id
属性種類必須説明
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
draft_note_id整数。yes下書きノートのID。
merge_request_iid整数。yesプロジェクトマージリクエストのIID。
note文字列です。いいえメモの内容
position[base_sha]文字列です。yesソースブランチのベースコミットSHA。
position[head_sha]文字列です。yesこのマージリクエストのHEADを参照するSHA。
position[start_sha]文字列です。yesターゲットブランチのコミットを参照する SHA。
position[new_path]文字列です。yes (ポジションタイプがtext の場合)変更後のファイルパス。
position[old_path]文字列です。yes (ポジションタイプがtext の場合)変更前のファイルパス。
position[position_type]文字列です。yes位置参照のタイプ。指定可能な値:text またはimage
positionハッシュいいえ差分ノート作成時の位置
position[new_line]整数。いいえ text 差分ノートの場合、変更後の行番号。
position[old_line]整数。いいえ text 差分ノートの場合、変更前の行番号。
position[line_range]ハッシュいいえ複数行の差分音符の行範囲。
position[width]整数。いいえ image 差分ノートの場合、画像の幅。
position[height]整数。いいえ image 差分ノートの場合、画像の高さ。
position[x]フロートいいえ image 差分ノートの場合、X座標。
position[y]フロートいいえ image 差分ノートのY座標。
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes/5"

下書きノートの削除

指定されたマージリクエストの既存の下書きメモを削除します。

DELETE /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id
属性種類必須説明
draft_note_id整数。yes下書きノートのID。
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
merge_request_iid整数。yesプロジェクトマージリクエストのIID。
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes/5"

ドラフトノートの発行

指定されたマージリクエストの既存の下書きノートを発行します。

PUT /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id/publish
属性種類必須説明
draft_note_id整数。yes下書きノートのID。
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
merge_request_iid整数。yesプロジェクトマージリクエストのIID。
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes/5/publish"

保留中のすべての草稿ノートを公開

ユーザーに属する、指定されたマージリクエストのすべての既存の草稿ノートを一括公開します。

POST /projects/:id/merge_requests/:merge_request_iid/draft_notes/bulk_publish
属性種類必須説明
id整数または文字列。yes プロジェクトのIDまたはURLエンコードされたパス
merge_request_iid整数。yesプロジェクトマージリクエストのIID。
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes/bulk_publish"