りっくまのお便り投稿シリーズJira編9: REST APIでJira課題を更新・コメント追加するっくま!

Author

南澤 華代Hanayo Minamisawa

南澤 華代

こんにちは。リックソフト ヘルプデスク担当の南澤です。
今回も リックソフトブログで一番人気?!のりっくまのお便り投稿シリーズをお送りします。
このシリーズは、技術知識があまりなく、Jira初心者の新米プロジェクトリーダーのりっくまくんが、弊社ヘルプデスクへ悩みを相談しながら成長していく物語です。
今回は、前回好評だった りっくまのお便り投稿シリーズ8: REST APIでJira課題を検索・作成するっくま!の続きで、REST APIを使ってJiraを利用する例を紹介したいと思います。

まず、REST APIとは何?となった方はりっくまのお便り投稿シリーズ8: REST APIでJira課題を検索・作成するっくま!に説明を記載していますので、ご確認ください。また、REST APIを使ってJira課題を検索、作成する方法も紹介しています。
今回も、以下のJiraの

REST APIリファレンスや利用例

をもとに質問に回答していきます。

REST APIでJira課題を編集

別システムからJira課題のフィールドを編集・・・なんてこともREST APIを使ってできちゃいます。
REST APIでJira課題を編集する場合は、JIRA Server platform REST API referenceを見ると、api/2/issue(Edit issue)のPUTメソッドでできそうなことがわかります。

例として以下のように、Jira課題の要約、説明、期限を更新してみましょう。

項目名 変更前 変更後
プロジェクト RSKUMA (りっくまプロジェクト) RSKUMA (りっくまプロジェクト)
課題キー RSKUMA-7 RSKUMA-7

要約

りっくまブログ 2018/6 作成

りっくまブログ 2018/7 作成依頼

課題タイプ タスク タスク
担当者 rickuma (りっくま) rickuma (りっくま)
報告者 meganekuma (めがねっくま) meganekuma (めがねっくま)
優先度 Medium Medium

説明

リックソフトブログ 6月分に掲載するブログを書いてください。

リックソフトブログ 7月分に掲載するブログを書いてください。テーマはランチのおいしいお店でお願いします。

期限

2018/06/25

2018/07/25

変更したい情報をJSONファイルにすると以下のようになります。

[html] <putissue.json の内容> { "fields" : { "summary": "りっくまブログ 2018/7 作成依頼", "description": "リックソフトブログ 7月分に掲載するブログを書いてください。テーマはランチのおいしいお店でお願いします。", "duedate":"2018-07-25" } }[/html]

このJSONファイルを作業ディレクトリに保管し、そこで以下のcurlコマンドを実行して、Jiraへ情報をPUTします。
JiraのベースURLは、http://192.168.56.103:8080/jira、実行ユーザーは「admin」、パスワードは「password」としてます。また、実行ユーザーはプロジェクトの課題の編集権限を持つ必要があります。

[html] <curlコマンド例> # curl \ -D- \ -u admin:password \ -X PUT \ --data @putissue.json \ -H "Content-Type: application/json" \ http://192.168.56.103:8080/jira/rest/api/2/issue/RSKUMA-7 [/html]

実際に課題キー「RSKUMA-7」の課題 (http://192.168.56.103:8080/jira/browse/RSKUMA-7) へアクセスすると、指定した内容で課題が更新できていることが分かります。

<変更前>

変更前

<変更後>

変更後

REST APIでJira課題へコメントする

今度は、Jira課題にコメントを入れてみましょう。
REST APIでJira課題を編集する場合は、JIRA Server platform REST API referenceを見ると、api/2/issue (Add comment)のPOSTメソッドでできそうなことがわかります。
コメントしたい情報をJSONファイルにすると以下のようになります。コメントの内容のほかに、コメント閲覧制限を同時に指定できます。今回はAministratorsロールだけコメントを閲覧できるようにします。

[html] <addcomment.json の内容> { "body": "了解しました。今回は大手町付近のおいしい店を紹介します。", "visibility": { "type": "role", "value": "Administrators" } } [/html]

このJSONファイルを作業ディレクトリに保管し、以下のcurlコマンドを実行して、Jiraへコメント情報をPOSTします。
JiraのベースURLは、http://192.168.56.103:8080/jira、実行ユーザーは「rickuma」、パスワードは「password」としてます。また、実行ユーザーはプロジェクトの課題へのコメント追加権限を持つ必要があります。

[html] <curlコマンド例> # curl \ -D- \ -u rickuma:password \ -X POST \ --data @addcomment.json \ -H "Content-Type: application/json" \ http://192.168.56.103:8080/jira/rest/api/2/issue/RSKUMA-7/comment [/html]

課題にりっくまのコメントが追加されました。

課題にりっくまのコメントが追加されました

最後に

今回も難しい質問でしたが、りっくまさん、このような回答でいかがでしょうか?
他にもわからないことがあったらどんどん質問してねっクマ♪

ご不明な点がございましたら、お気軽に弊社にお問合せください。

お問い合わせ

また30日の無料評価ライセンスがありますので、ぜひお試しください。

評価ライセンスのご依頼

Jira Software について