グループラベルAPI
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
このAPIを使用して、グループラベルを管理します。
プロジェクトラベルには、プロジェクトラベルAPIを使用します。
グループラベルの一覧表示
指定されたグループのすべてのラベルを取得します。
GET /groups/:id/labels| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス。 |
with_counts | ブール値 | いいえ | イシューとマージリクエストの数を含めるかどうか。falseがデフォルトです。 |
include_ancestor_groups | ブール値 | いいえ | 祖先グループを含めます。trueがデフォルトです。 |
include_descendant_groups | ブール値 | いいえ | 子孫グループを含めます。falseがデフォルトです。 |
only_group_labels | ブール値 | いいえ | グループラベルのみを含めるか、プロジェクトラベルも一緒に含めるかの切替。trueがデフォルトです。 |
search | 文字列 | いいえ | ラベルでフィルタリングするキーワード。 |
archived | ブール値 | いいえ | trueの場合、アーカイブされたラベルのみを返します。設定されていない場合、すべてのラベルを返します。 |
curl \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/labels?with_counts=true"レスポンス例:
[
{
"id": 7,
"name": "bug",
"color": "#FF0000",
"text_color" : "#FFFFFF",
"description": null,
"description_html": null,
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
"archived": false
},
{
"id": 4,
"name": "feature",
"color": "#228B22",
"text_color" : "#FFFFFF",
"description": null,
"description_html": null,
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
"archived": false
}
]単一のグループラベルを取得
指定されたグループの単一のラベルを取得します。
GET /groups/:id/labels/:label_id| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス。 |
label_id | 整数または文字列 | はい | グループのラベルのIDまたはタイトル。 |
include_ancestor_groups | ブール値 | いいえ | 祖先グループを含めます。trueがデフォルトです。 |
include_descendant_groups | ブール値 | いいえ | 子孫グループを含めます。falseがデフォルトです。 |
only_group_labels | ブール値 | いいえ | グループラベルのみを含めるか、プロジェクトラベルも一緒に含めるかの切替。trueがデフォルトです。 |
curl \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/labels/bug"レスポンス例:
{
"id": 7,
"name": "bug",
"color": "#FF0000",
"text_color" : "#FFFFFF",
"description": null,
"description_html": null,
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
"archived": false
}新しいグループラベルを作成
指定されたグループの新しいグループラベルを作成します。
POST /groups/:id/labels| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス |
name | 文字列 | はい | ラベルの名前 |
color | 文字列 | はい | ラベルの色。先頭に「#」が付いた6桁の16進表記(例: #FFAABB)またはCSSカラー名のいずれかで指定します。 |
description | 文字列 | いいえ | ラベルの説明、 |
archived | ブール値 | いいえ | trueの場合、ラベルをアーカイブ済みとしてマークします。デフォルト値: false。デフォルト値: false。 |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--header "Content-Type: application/json" \
--data '{
"name": "Feature Proposal",
"color": "#FFA500",
"description": "Describes new ideas"
}' \
--url "https://gitlab.example.com/api/v4/groups/5/labels"レスポンス例:
{
"id": 9,
"name": "Feature Proposal",
"color": "#FFA500",
"text_color" : "#FFFFFF",
"description": "Describes new ideas",
"description_html": "Describes new ideas",
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
"archived": false
}グループラベルを更新
既存のグループラベルを更新します。グループラベルを更新するには、少なくとも1つのパラメータが必要です。
PUT /groups/:id/labels/:label_id| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス |
label_id | 整数または文字列 | はい | グループのラベルのIDまたはタイトル。 |
new_name | 文字列 | いいえ | ラベルの新しい名前 |
color | 文字列 | いいえ | ラベルの色。先頭に「#」が付いた6桁の16進表記(例: #FFAABB)またはCSSカラー名のいずれかで指定します。 |
description | 文字列 | いいえ | ラベルの説明。 |
archived | ブール値 | いいえ | trueの場合、ラベルをアーカイブ済みとしてマークします。デフォルト値: false。デフォルト値: false。 |
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--header "Content-Type: application/json" \
--data '{"new_name": "Feature Idea"}' \
--url "https://gitlab.example.com/api/v4/groups/5/labels/Feature%20Proposal"レスポンス例:
{
"id": 9,
"name": "Feature Idea",
"color": "#FFA500",
"text_color" : "#FFFFFF",
"description": "Describes new ideas",
"description_html": "Describes new ideas",
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
"archived": false
}古いエンドポイントPUT /groups/:id/labels (パラメータにnameを含む) は引き続き利用可能ですが、非推奨です。
グループラベルを削除
指定された名前のグループラベルを削除します。
DELETE /groups/:id/labels/:label_id| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス |
label_id | 整数または文字列 | はい | グループのラベルのIDまたはタイトル。 |
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/labels/bug"古いエンドポイントDELETE /groups/:id/labels (パラメータにnameを含む) は引き続き利用可能ですが、非推奨です。
グループラベルを購読
認証済みユーザーをグループラベルに登録し、通知を受け取ります。ユーザーがすでにラベルを購読している場合、ステータスコード304が返されます。
POST /groups/:id/labels/:label_id/subscribe| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス |
label_id | 整数または文字列 | はい | グループのラベルのIDまたはタイトル。 |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/labels/9/subscribe"レスポンス例:
{
"id": 9,
"name": "Feature Idea",
"color": "#FFA500",
"text_color" : "#FFFFFF",
"description": "Describes new ideas",
"description_html": "Describes new ideas",
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": true,
"archived": false
}グループラベルの購読解除
認証済みユーザーをグループラベルから登録解除し、それからの通知を受け取らないようにします。ユーザーがラベルを購読していない場合、ステータスコード304が返されます。
POST /groups/:id/labels/:label_id/unsubscribe| 属性 | 型 | 必須 | 説明 |
|---|---|---|---|
id | 整数または文字列 | はい | グループのIDまたはURLエンコードされたパス |
label_id | 整数または文字列 | はい | グループのラベルのIDまたはタイトル。 |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/groups/5/labels/9/unsubscribe"レスポンス例:
{
"id": 9,
"name": "Feature Idea",
"color": "#FFA500",
"text_color" : "#FFFFFF",
"description": "Describes new ideas",
"description_html": "Describes new ideas",
"open_issues_count": 0,
"closed_issues_count": 0,
"open_merge_requests_count": 0,
"subscribed": false,
"archived": false
}