ドラフトノートAPI
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
このAPIを使用して、ドラフトノートを管理します。これらのノートは、マージリクエストに関する保留中の未公開コメントです。ドラフトノートはディスカッションを開始したり、既存のディスカッションへの返信として継続したりできます。
公開するまで、ドラフトノートは作成者のみに表示されます。
すべてのマージリクエストドラフトノートを一覧表示
単一のマージリクエストのすべてのドラフトノートのリストを取得します。
GET /projects/:id/merge_requests/:merge_request_iid/draft_notes| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID |
[
{
"id": 5,
"author_id": 23,
"merge_request_id": 11,
"resolve_discussion": false,
"discussion_id": null,
"note": "Example title",
"commit_id": null,
"line_code": null,
"position": {
"base_sha": null,
"start_sha": null,
"head_sha": null,
"old_path": null,
"new_path": null,
"position_type": "text",
"old_line": null,
"new_line": null,
"line_range": null
}
}
]curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
draft_note_id | 整数 | はい | ドラフトノートのID。 |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID。 |
[
{
"id": 5,
"author_id": 23,
"merge_request_id": 11,
"resolve_discussion": false,
"discussion_id": null,
"note": "Example title",
"commit_id": null,
"line_code": null,
"position": {
"base_sha": null,
"start_sha": null,
"head_sha": null,
"old_path": null,
"new_path": null,
"position_type": "text",
"old_line": null,
"new_line": null,
"line_range": null
}
}
]curl --header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID。 |
note | 文字列 | はい | ノートのコンテンツ。 |
commit_id | 文字列 | いいえ | ドラフトノートを関連付けるコミットのSHA。 |
in_reply_to_discussion_id | 文字列 | いいえ | ドラフトノートが返信するディスカッションのID。 |
resolve_discussion | ブール値 | いいえ | 関連付けられたディスカッションは解決されるはずです。 |
position | ハッシュ | いいえ | 差分ノートを作成する際の位置。省略した場合、通常のディスカッションノートが作成されます。 |
position[base_sha] | 文字列 | はい(positionが指定されている場合) | ソースブランチのベースコミットSHA。 |
position[head_sha] | 文字列 | はい(positionが指定されている場合) | このマージリクエストのHEADを参照するSHA。 |
position[start_sha] | 文字列 | はい(positionが指定されている場合) | ターゲットブランチのコミットを参照するSHA。 |
position[new_path] | 文字列 | はい(position typeがtextの場合) | 変更後のファイルパス。 |
position[old_path] | 文字列 | はい(position typeがtextの場合) | 変更前のファイルパス。 |
position[position_type] | 文字列 | はい(positionが指定されている場合) | 位置参照のタイプ。許可される値:text、image、またはfile。fileは、GitLab 16.4で導入されました。 |
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>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
draft_note_id | 整数 | はい | ドラフトノートのID。 |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID。 |
note | 文字列 | いいえ | ノートのコンテンツ。 |
position | ハッシュ | いいえ | 差分ノートを作成する際の位置。 |
position[base_sha] | 文字列 | はい(positionが指定されている場合) | ソースブランチのベースコミットSHA。 |
position[head_sha] | 文字列 | はい(positionが指定されている場合) | このマージリクエストのHEADを参照するSHA。 |
position[start_sha] | 文字列 | はい(positionが指定されている場合) | ターゲットブランチのコミットを参照するSHA。 |
position[new_path] | 文字列 | はい(position typeがtextの場合) | 変更後のファイルパス。 |
position[old_path] | 文字列 | はい(position typeがtextの場合) | 変更前のファイルパス。 |
position[position_type] | 文字列 | はい(positionが指定されている場合) | 位置参照のタイプ。許可される値:text、image、またはfile。fileは、GitLab 16.4で導入されました。 |
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>" \
--url "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 | 整数 | はい | ドラフトノートのID。 |
id | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID。 |
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数 | はい | ドラフトノートのID。 |
id | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID。 |
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "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 | 整数または文字列 | はい | プロジェクトのIDまたはURLエンコードされたパス。 |
merge_request_iid | 整数 | はい | プロジェクトマージリクエストのIID。 |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/14/merge_requests/11/draft_notes/bulk_publish"