リリースリンク API

GitLab 11.7 で導入されました

このAPIを使って、GitLabのReleaseリンクを操作することができます。 その他のReleaseアセットの操作については、Release APIを参照してください。 GitLabはhttp,https,ftp アセットのリンクをサポートしています。

リリースからアセットをリンクとして取得します。

GET /projects/:id/releases/:tag_name/assets/links
属性 タイプ 必須 説明
id 整数/文字列 はい プロジェクトのIDまたはURLエンコードされたパス
tag_name はい リリースに関連するタグ。

リクエスト例

curl --header "PRIVATE-TOKEN: n671WNGecHugsdEDPsyo" "https://gitlab.example.com/api/v4/projects/24/releases/v0.1/assets/links"

回答例

[
   {
      "id":2,
      "name":"awesome-v0.2.msi",
      "url":"http://192.168.10.15:3000/msi",
      "external":true,
      "link_type":"other"
   },
   {
      "id":1,
      "name":"awesome-v0.2.dmg",
      "url":"http://192.168.10.15:3000",
      "external":true,
      "link_type":"other"
   }
]

リリースからアセットをリンクとして取得します。

GET /projects/:id/releases/:tag_name/assets/links/:link_id
属性 タイプ 必須 説明
id 整数/文字列 はい プロジェクトのIDまたはURLエンコードされたパス
tag_name はい リリースに関連するタグ。
link_id 整数 はい リンクのID。

リクエスト例

curl --header "PRIVATE-TOKEN: n671WNGecHugsdEDPsyo" "https://gitlab.example.com/api/v4/projects/24/releases/v0.1/assets/links/1"

回答例

{
   "id":1,
   "name":"awesome-v0.2.dmg",
   "url":"http://192.168.10.15:3000",
   "external":true,
   "link_type":"other"
}

リリースからリンクとしてアセットを作成します。

POST /projects/:id/releases/:tag_name/assets/links
属性 タイプ 必須 説明
id 整数/文字列 はい プロジェクトのIDまたはURLエンコードされたパス
tag_name はい リリースに関連するタグ。
name はい リンクの名前。
url はい リンクのURL。
link_type いいえ リンクのタイプ:other,runbook,image,package. デフォルトはother.

リクエスト例

curl --request POST \
     --header "PRIVATE-TOKEN: n671WNGecHugsdEDPsyo" \
     --data name="awesome-v0.2.dmg" \
     --data url="http://192.168.10.15:3000" \
     "https://gitlab.example.com/api/v4/projects/24/releases/v0.1/assets/links"

回答例

{
   "id":1,
   "name":"awesome-v0.2.dmg",
   "url":"http://192.168.10.15:3000",
   "external":true,
   "link_type":"other"
}

リリースからのリンクとしてアセットを更新します。

PUT /projects/:id/releases/:tag_name/assets/links/:link_id
属性 タイプ 必須 説明
id 整数/文字列 はい プロジェクトのIDまたはURLエンコードされたパス
tag_name はい リリースに関連するタグ。
link_id 整数 はい リンクのID。
name いいえ リンクの名前。
url いいえ リンクのURL。
link_type いいえ リンクのタイプ:other,runbook,image,package. デフォルトはother.
注:name またはurl

リクエスト例

curl --request PUT --data name="new name" --data link_type="runbook" --header "PRIVATE-TOKEN: n671WNGecHugsdEDPsyo" "https://gitlab.example.com/api/v4/projects/24/releases/v0.1/assets/links/1"

回答例

{
   "id":1,
   "name":"new name",
   "url":"http://192.168.10.15:3000",
   "external":true,
   "link_type":"runbook"
}

リリースからリンクとしてアセットを削除します。

DELETE /projects/:id/releases/:tag_name/assets/links/:link_id
属性 タイプ 必須 説明
id 整数/文字列 はい プロジェクトのIDまたはURLエンコードされたパス
tag_name はい リリースに関連するタグ。
link_id 整数 はい リンクのID。

リクエスト例

curl --request DELETE --header "PRIVATE-TOKEN: n671WNGecHugsdEDPsyo" "https://gitlab.example.com/api/v4/projects/24/releases/v0.1/assets/links/1"

回答例

{
   "id":1,
   "name":"new name",
   "url":"http://192.168.10.15:3000",
   "external":true,
   "link_type":"other"
}