自動化の基本
Atlassian Cloud 製品における自動化の一般的なコンセプトとベスト プラクティスを説明します。
スマート値を使うと、Atlassian Automation 内の課題データにアクセスできます。たとえば、次のスマート値を使用して、課題キーと課題の要約を含む Slack メッセージを送信できます: {{issue.key}} {{issue.summary}}
Jira Automation テンプレート ライブラリでスマート バリューの使用方法をご確認ください。
課題のスマート値は、ルールのアクティブな課題 (現在ルールを適用中の課題) に関連する情報にアクセスするために使用されます。
課題でアクセスできる情報は、「利用可能なプロパティ」セクションで後述しています。課題のプロパティの中でも特に複雑なものについては、このページの個別セクションで説明しています。
これらを使用して Jira の REST API とやり取りする方法をご覧ください。
課題フィールド
{{issue.description}} - 課題の [説明] フィールドにあるコンテンツを返します。
{{issue.key}} - 課題のキーを返します。このキーは、プロジェクト キーと課題の番号を組み合わせた一意の識別子です。例: PROJ-123
{{issue.project}} - この課題が属しているプロジェクト。
{{issue.status}} - 課題のステータス ID を返します。
{{issue.status.name}} - 課題のステータスを返します。
{{issue.summary}} - 課題の要約を返します。
{{issue.versions}} - 課題の影響を受けたバージョンを返します。
{{issue.issueType.name}} - 課題のタイプを返します (ストーリー、バグ、タスクなど)。
{{issue.resolution.name}} - 課題の解決状況を返します。たとえば、修正済み、キャンセル済みなど。
{{issue.updated}} - 課題の更新日を返します。他の日時のスマート値と組み合わせられます。日付と時刻のスマート値の詳細をご確認ください。
{{issue.Story Points}} - 課題のストーリー ポイントの見積もりを返します (企業管理対象 Jira Cloud のみ)。
{{issue.Story point estimate}} - 課題のストーリー ポイントの見積もりを返します (チーム管理対象 Jira Cloud のみ)。
課題の日付
他の日付や時間のスマート バリューと組み合わせることができます。日付と時間のスマート バリューの詳細をご覧ください。
{{issue.created}} - 課題の作成日を返します。
{{issue.duedate}} - 課題の期限を返します。
課題のユーザー
他のユーザー スマート バリューと組み合わせられます。ユーザー スマート バリューの詳細をご確認ください。
{{issue.assignee.displayName}} - 課題の担当者を返します。
{{issue.reporter.displayName}} - 課題の報告者を返します。
{{issue.[property]}} と同様、自分の課題のカスタム フィールド情報にアクセスすることもできます。
{{issue.[Custom Field].id}} - Jira によって割り当てられたフィールドの一意の ID を返します。これは変更できないため、名前よりも優先して使用することをお勧めします。
{{issue.[Custom Field].description}} - [簡易検索] 列で表示されているカスタム フィールドの下に表示されているテキストを返します。
{{issue.[Custom Field].name}} - フィールドの左側に表示されるラベルを返します。
以下の例では、Team Leader というカスタム フィールドがあり、フィールドの値は現在 Alana Grant になっています。
1
2
3
4
5
{{issue.Team Leader}}
//returns
Alana Grant
Jira Service Management のリクエストのみ
課題の [影響を受けるサービス] フィールドの値にアクセスします。Jira Service Management のサービスの詳細をご確認ください。
このスマート バリューは複数のアイテムに対応しているため (課題には多数の修正バージョンがある場合があります)、# 記号と組み合わせることでルールを各修正バージョンに適用できます。セクションとリストでのスマート バリューの使用の詳細をご確認ください。
スマート値 {{affectedServices}} は、ITSM (IT サービス管理) テンプレートを使用するプロジェクトでのみ利用できます。ITSM ベースの Jira Service Management プロジェクトでは、インシデント管理などの IT サービス プロセスをサポートするために特定の設定とフィールドが設計されています。
他のテンプレートを使用しているプロジェクトの場合は、代わりにフィールド名を直接参照してください。この方法の例を以下に示します。
{{issue.Affected services.name}}
{{issue.Affected services.tier}}
{{issue.Affected services.changeApprovers.displayName}}
{{issue.affectedServices.name}} - 課題の影響を受けるサービスの名前を返します。
{{issue.affectedServices.tier}} - 課題の影響を受けるサービスの階層を返します。
{{issue.affectedServices.changeApprovers}} - 課題のサービスに対する変更承認者すべてのアカウント ID を返します。他のユーザー関連のスマート値と組み合わせられます。たとえば、{{issue.affectedServices.changeApprovers.displayName}} はそれらの名前を返します。ユーザー スマート値の詳細をご確認ください。
{{issue.affectedServices.dependentServices}} - この課題のサービスが依存しているサービスのリストを返します。上記の 3 つのプロパティもこれに追加できます。たとえば、{{issue.affectedServices.dependentServices.tier}} は依存しているサービスの階層を返します。
課題のコメントを返します。このスマート バリューは複数のアイテムに対応しているため (課題には通常多数のコメントがあります)、# 記号と組み合わせることでルールを個別の各コメントに適用できます。セクションとリストでスマート バリューを使用する方法の詳細をご確認ください。
{{issue.comments.last.body}} - 最後のコメントの本文を返します。
{{issue.comments.first.body}} - 最初のコメントの本文を返します。
{{issue.comments.reverse.body}} - 課題のコメントを逆順で返します。
{{issue.comments.size}} - 課題にあるコメント数を返します。
{{issue.comments.author.displayName}} - コメントの作成者を返します。
以下の例では、課題にある各コメントを一覧表示して、作成者と作成日時を含めています。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{{#issue.comments}}
Comment by: {{author.displayName}} at: {{created}}
{{body}}
{{/}}
//returns
Comment by: Alana at: 2019-05-30T15:36:02.3+0000
Hey team, how are we tracking on this task?
Comment by: Jose at: 2019-05-30T15:40:57.0+0000
We'll be ready to ship at the end of the week.
Comment by: Alana at: 2019-05-30T15:44:15.7+0000
Great, thanks for the update!
この例では、課題に最後にコメントを追加したユーザーの名前を返します。
1
2
3
4
5
{{issue.comments.last.author.displayName}} has left a comment on the issue.
//returns
Alana Grant has left a comment on the issue.
課題の [コンポーネント] フィールドの値にアクセスするために使用されます。このスマート バリューは複数のアイテムに対応しているため (課題には多数のコンポーネントがある場合があります)、# 記号と組み合わせることでルールを各コンポーネントに適用できます。セクションとリストでスマート バリューを使用する方法の詳細をご確認ください。
{{issue.components.name}} - 課題の [コンポーネント] フィールドの値を返します。
課題のエピックに関する情報にアクセスするために使用されます。このスマート バリューはエピックに追加された課題でのみ機能します。
{{issue.epic.key}} - エピックのキーを返します。例:PROJ-213
{{issue.epic.status.name}} - 「進行中」などエピックのステータスを返します。
{{issue.epic.[Custom Field]}} - エピックのカスタム フィールドの値を返します。たとえば、エピックに [Initiative] というカスタム フィールドがある場合 {{issue.epic.Initiative}} は [Initiative] フィールドの値を返します。
課題の [修正バージョン] フィールドの値にアクセスするために使用されます。このスマート バリューは複数のアイテムに対応しているため (課題には多数の修正バージョンがある場合があります)、# 記号と組み合わせることでルールを各修正バージョンに適用できます。セクションとリストでのスマート バリューの使用の詳細をご確認ください。
{{issue.fixVersions.name}} - 修正バージョンの名前を返します。
{{issue.fixVersions.description}} - 修正バージョンの説明を返します。
{{issue.fixVersions.archived}} - 修正バージョンがアーカイブされている場合は true を返し、そうでない場合は false を返します。
{{issue.fixVersions.released}} - 修正バージョンがリリースされている場合は true を返し、そうでない場合は false を返します。
{{issue.fixVersions.releaseDate}} - 修正バージョンのリリース日を返します。他の日時のスマート値と組み合わせられます。日付と時刻のスマート値の詳細をご確認ください。
以下の例では、課題が追加された各修正バージョンに続けて、バージョンのリリース日を箇条書き形式でリストしています。
1
2
3
4
5
6
7
8
9
10
This issue is part of the following releases:
{{#issue.fixVersions}}
* Fix version: {{name}}, released on {{releaseDate}}
{{/}}
// returns
This issue is part of the following releases:
• Fix version: Version 1.1, released on 2019-08-10T00:00:00.0+0000
• Fix version: Version 1.5, released on 2019-08-02T00:00:00.0+0000
課題キーとそのステータスを表示します (例.: To do、進行中、または完了)。
利用可能なプロパティ:
{{issue.latest.description}} - ステータスの説明を返します。
このスマート バリューにはコストのかさむ課題データのリロードが必要です。後続アクションが課題の最新ステータスを把握する必要がある状況でのみ使用してください。たとえば、課題を編集アクション 2 件がフィールドの値を上書きではなく追加する必要がある場合などです。
Jira Cloud の "エピック リンク" フィールドと "親リンク" フィールドは廃止され、これらのスマート値の使用方法に影響します。
サブタスクの親課題の詳細にアクセスします。アクティブな課題がサブタスクの場合にのみ使用でき、標準課題の親課題にアクセスするために使用することはできません。
{{issue.parent.key}} - サブタスクの親課題の課題キーを返します。
{{issue.parent.priority.name}} - サブタスクの親課題の優先度を返します。
{{issue.parent.epic.summary}} - 親課題のエピックの要約を返します。
任意の課題プロパティにアクセスします。プロパティは、値を格納するためにアドオンと統合機能によって頻繁に使用されます (例: {{issue.properties.some.value}})。
Jira Service Management リクエストから情報にアクセスします。
{{issue.Request Type.requestType.name}} - 顧客リクエスト タイプを返します。
{{issue.Request Type.currentStatus.status}} - 現在のリクエストのステータスを返します。
{{issue.Customer Request Type}} - 古い Jira インスタンスの顧客リクエスト タイプを返します。
セキュリティ レベルのテキストです。
{{issue.security.name}} - セキュリティ レベル名を返します。
{{issue.security.id}} - セキュリティ レベル ID を返します。
タイム トラッキングの見積にアクセスします。タイム トラッキングの設定に関する詳細についてご確認ください。
{{issue.timetracking.timespent}} - 課題に記録された時間を [滞在時間] フィールドに返します。
{{issue.timetracking.remainingestimate}} - [残り時間] フィールドの値を返します。
課題にアクセスするための URL。Jira Service Management リクエスト用のカスタマー ポータル URL も提供します。
{{issue.url}} - 課題の URL を返します。
{{issue.url.customer}} - Jira Service Management リクエスト用のカスタマー ポータル URL を返します。
課題の [影響バージョン] フィールドの値にアクセスします。このスマート バリューは複数のアイテムに対応しているため (課題には影響を受けるバージョンが多数ある場合があります)、# 記号と組み合わせることでルールを各コンポーネントに適用できます。セクションとリストでのスマート バリューの使用の詳細をご確認ください。
{{versions.name}} - 影響を受けるバージョンの名前を返します。
{{versions.description}} - 影響を受けるバージョンの説明を返します。
{{versions.archived}} - 影響を受けるバージョンがアーカイブされている場合は true を返し、そうでない場合は false を返します。
{{versions.released}} - 影響を受けるバージョンがリリースされている場合は true を返し、そうでない場合は false を返します。
{{versions.releaseDate}} - 影響を受けるバージョンのリリース日を返します。他の日時のスマート値と組み合わせられます。日付と時刻のスマート値の詳細をご確認ください。
以下の例では、課題で最初に影響を受けるバージョンのリリース日が表示されます。
1
The bug was first discovered in the version released on {{issue.versions.first.releaseDate}}.
課題の現在のウォッチャーにアクセスします。このスマート バリューは複数のアイテムに対応しているため (課題には多数のウォッチャーがいる場合があります)、# 記号と組み合わせることでルールを個別の各コンポーネントに適用できます。セクションとリストでスマート バリューを使用する方法の詳細をご確認ください。
{{issue.watchers.displayName}} - ウォッチャーの表示名を返します。
{{issue.watchers.emailAddress}} - ウォッチャーのメール アドレスを返します。
以下の例では、表示名とメール アドレスも含めて、課題をウォッチしている各ユーザーを箇条書き形式でリストしています。
1
2
3
4
5
6
7
8
9
10
11
The following people are watching this issue:
{{#issue.watchers}}
* Name: {{displayName}}, Email: {{emailAddress}}
{{/}}
// returns
The following people are watching this issue:
• Alana, alana@acme.com
• Jose, jose@acme.com
[課題を検索] アクションによって実行される JQL 検索からの課題リストを返します。
{{key}} - 課題キーを返します
{{url}} - 課題の URL を返します
{{summary}} - 課題の要約を返します。
{{assignee.displayName}} - 担当者を返します。
{{reporter.displayName}} - 報告者を返します。
{{status}} - ステータスを返します。
{{issueType.name}} - 課題タイプを返します。
{{resolution}} - 解決状況ステータスを返します。
{{fixVersion}} - 修正バージョンを返します。
{{created}} - 課題の作成日を返します。
{{updated}} - 課題の更新日を返します。
{{Story Points}} - 課題のストーリー ポイントを返します (企業管理対象 Jira)
{{Story point estimate}} - 課題のストーリー ポイントを返します (チーム管理対象 Jira)
以下の例では、JQL 検索で返されたすべての課題キーを箇条書き形式で表示します。
1
2
3
4
Hey team - we've got the following issues left in this sprint:
{{#lookupIssues}}
* {{key}}
{{/}}
次の例は、JQL 検索から返された課題のすべてのストーリー ポイントを合計します。
1
There are {{lookupIssues.Story Points.sum}} story points remaining.
チェーンを分岐させる際に使用する、ルールをトリガーした元の課題を参照します。関連課題の条件で使用。{{issue}} で利用可能なすべてのプロパティはこのスマート バリューでも使用できます。
課題の添付ファイルに関連する情報にアクセスします。課題に複数の添付ファイルがある場合は、値のリストを返します。スマート値のリストに関する詳細についてご確認ください。
{{attachment.filename}}: 添付ファイルのファイル名を返します。
{{attachment.mimeType}}: 添付ファイルのファイル フォーマットを返します。
{{attachment.created}}: 添付ファイルが課題に追加された日時を返します。
{{attachment.[xxx].size}}: 特定の添付ファイルのファイル サイズを返します。これを機能させるには、スマート値が特定の添付ファイルを識別する必要があります。たとえば、{{attachment.first.size}} は最初の添付ファイルのファイル サイズを返します。スマート値のリストに関する詳細についてご確認ください。
{{attachment.content}}: バイナリ コンテンツを文字列としてレンダリングして添付ファイルの内容を返します。
{{attachment.author}}: 添付ファイルを追加したユーザーを返します。
{{attachment.author.accountId}}: ユーザー名に関連付けられた ID を返します。
{{attachment.author.emailAddress}}: ユーザー名に関連付けられたメールアドレスを返します。
{{attachment.author.displayName}}: Jira インスタンスに表示される名前を返します。
{{attachment.author.active}}: アカウントが有効な場合は true を返し、そうでない場合は false を返します。
{{attachment.author.timeZone}}: ユーザーが登録されているタイムゾーンを返します (これはユーザーのログイン場所に基づいた動的な変化はせず、ユーザー アカウントに登録されているタイムゾーンです)。
Jira インスタンスの URL を表示します。
使用方法: 課題を編集するトリガー
このスマート バリューは変更履歴と、各フィールドの変更リストにアクセスします。たとえば課題が移行される場合は、課題が移行する前のステータスが確認できます。
セクションとリストでスマート バリューを使う方法の詳細は、こちらをご覧ください。
{changelog.summary} - Changelog information for the Summary field.
{changelog.issuetype} - Changelog information for the Issue type field.
{changelog.status} - Changelog information for the Status field.
この例では、課題の [要約] フィールドの変更後の新しい値を返します。
1
2
3
{{#changelog.summary}}
{{toString}}
{{/}}
この例では、課題の変更前のタイプを返します。
1
2
3
{{#changelog.issuetype}}
{{fromString}}
{{/}}
この例では、移行された課題の以前のステータスを表示します。
1
{{#changelog.status}}{{fromString}}{{/}}
この例では、以前のステータス ID (別の [編集] アクションで使用するため) を表示します。
1
{{#changelog.status}}{{from}}{{/}}
使用方法: [課題のコメント時] トリガー
結果としてコメントが追加されても、この値は他のトリガーでは機能しません ([課題のトランジション時] トリガーなど)。
{{comment.body}} - ルールをトリガーしたコメントの本文を返します。
{{comment.author}} - コメント作成者の ID を返します。
{{comment.created}} - コメントの日時を返します。
{{comment.visibility.type}} - コメントの制限タイプ (ある場合) を返します。例:ロール。
{{comment.visibility.value}} - コメントの制限ラベル (ある場合) を返します。例:開発者。
{{comment.internal}} - Jira Service Management コメントで、コメントが顧客に表示される場合は false を返します。
{{comment.properties}} - コメントのプロパティにアクセスします。プロパティはアドオンや統合で値を保存するためによく使用されます。
{{comment.properties."sd.public.comment".internal}} -
以下の例では、誰かが課題にコメントを追加した旨の通知をSlack メッセージなどとして送信します。
1
2
3
4
5
6
7
Hey team, {{comment.author.displayName}} has left the following comment on {{issue.key}}:
{{comment.body}}
// returns
Hey team, Alana Grant has left the following comment on PROJ-12:
Could I get an urgent update on this please?
[課題のコメント時]、[課題のトランジション時]、[課題の更新時] など、コメントの追加を伴うトリガーで使用されます。ルールをトリガーするコメントは、このスマート バリューに保存されます。
ルールで作成された過去の課題にアクセスします。
{{issue}} スマート バリューで使用されるプロパティは {{createdIssue}} でも使用できます。
ルールで作成された課題のリストです。
{{issue}} スマート値で使用されるプロパティは {{createdIssue}} でも使用できます。セクションとリストでスマート値を使用する方法の詳細をご確認ください。
1
2
3
4
{{#createdIssues}}{{key}}{{/}}
ルールをトリガーしたイベントのタイプです。たとえば、jira:issue_updated :issue_commented のようになります。
変更されたフィールド値にアクセスする、どこでも利用可能なスマート バリューがサポートされます。たとえば、フィールドの担当者が変わる場合、課題にコメントを追加して、前の担当者と新しい担当者を記録できます。
変更したフィールドが複数ある場合、{{fieldChange}} には最初に変更した値のみ含まれます。複数の値が変更される場合は、# を使用して反復処理します。たとえば、複数の修正バージョンを設定する場合、{{#changelog.fixVersion}}{{toString}} を使用して反復処理します。セクションとリストでスマート値を使用する方法の詳細をご確認ください。
{{fieldChange.fromString}} - 前の値を表示されるとおりに返します。
{{fieldChange.toString}} - 新しい値を表示されるとおりに返します。
{{fieldChange.from}} - フィールドの前の未加工の値、つまり値の JSON 表現を返します。
{{fieldChange.to}} - フィールドの新しい未加工の値、つまり値の JSON 表現を返します。
{{addedfieldChange.field}} - 値の追加によって変更されたフィールドを返します。
{{addedFieldChange.fieldId}} - 値の追加によって変更されたフィールドの fieldID を返します。
{{addedFieldChange.fieldType}} - 値の追加によって変更されたフィールドの fieldType を返します。
{{addedfieldChange.valueIds}} - 追加された新しい値の ID を返します。
{{addedfieldChange.values}} - 追加された新しい値を返します。
{{deletedFieldChange.field}} - 値の削除により値が変更されたフィールドを返します。
{{deletedFieldChange.fieldId}} - 値の削除によって変更されたフィールドの fieldID を返します。
{{deletedFieldChange.fieldType}} - 値の削除によって変更されたフィールドの fieldType を返します。
{{deletedFieldChange.valueIds}} - 削除された値の ID を返します。
{{deletedFieldChange.values}} - 削除された値を返します。
現在の実行ルールの情報にアクセスします。
{{rule.name}} - 現在実行中のルール名を返します。
{{rule.actor}} - ルール実行者にアクセスします。
使用方法: [受信 Webhook] トリガー
受信 Webhook とともに送信されたデータ (Webhook リクエストの本文など) にアクセスできます。
使用方法: [Web リクエストを送信] アクション ([応答待ち] が有効)
リクエストが成功すると、利用可能なスマート バリューを使って Webhook 応答データにアクセスできます。複数の webhook 応答がある場合、# シンボルを追加して、各個別の応答にルールを適用できます。セクションとリストでのスマート バリューの使用の詳細をご確認ください。
{{webhookResponse.status}} - 応答コードを返します。例:200
{{webhookResponse.headers}} - ドットネーションでアクセスできるヘッダー
{{webhookResponse.headers.Content-Type}}
{{webhookResponse.body}} - ドット ネーションでアクセスできる本文
{{webhookResponse.body.name}}
{{webhookResponses}} - リスト オペレーション時に作成された応答リスト
{{webhookResponses.last.body}}
これは、スマート バリューで複数の応答を返す方法です。
1
2
3
4
{{webhookResponses.last.someValue.childValue}}
{{#webhookResponses}}
Data from response: {{someValue.childValue}}
{{/}}
使用方法: [作業の記録時] トリガー
課題に対してログが作成されたばかりの作業ログ エントリ情報にアクセスします。
{{worklog.comment}}
{{worklog.started}}
{{worklog.timeSpentSeconds}}
{{worklog.timeSpent}}
{{worklog.visibility}} - 作業ログが制限される場合に利用可能
{{worklog.visibility.type}} - 作業ログが制限される場合に利用可能
{{worklog.visibility.value}} - 作業ログが制限される場合に利用可能
これはレガシー Insight アプリに適用されます。Jira Service Management の Insight 機能に関連するスマート値については「自動化スマート値 - アセット」をご参照ください。
レガシー Insight アプリは 2022 年 3 月 31 日にサービスを終了します。
インサイト フィールドの正式名、キー、または要約にアクセスします。
{{issue.InsightField}} - 課題の要約と課題キーを返します
{{issue.InsightField.key}} - 課題キーを返します
{{issue.InsightField.summary}} - 課題の要約を返します。
Tempo アカウント フィールドのプロパティにアクセスします。
{{issue.TempoAccountField}} - アカウントの名前を返します
{{issue.TempoAccountField.id}} - アカウントの ID を返します
{{issue.TempoAccountField.name}} - アカウントの名前を返します
{{issue.TempoAccountField.value}} - アカウントの名前を返します
承認が必要: 承認が必要な課題が作成または更新された、または新しい承認者が課題に追加された際に、情報にアクセスします。
承認完了済み: 課題の承認ステップが承認または却下された際に、承認に関する情報にアクセスします。
「承認が必要」トリガーと「承認完了」トリガーの両方で使用可能:
{{approval.createdDate}} - 承認の作成日を返します。日付のスマート値に関する詳細についてご確認ください。
{{approval}} - 承認の名前を返します。
「承認が必要」トリガーのみ:
{{approval.initiator}} - リクエストのイニシエータのアカウント ID を返します。ユーザー スマート値の詳細についてご確認ください。
{{approval.addedApprovers}} - 課題に追加された承認者のセットを返します。
「承認完了」トリガーのみ:
{{approval.approver}} - 承認者のアカウント ID を返します。他のユーザー スマート値と組み合わせられます。ユーザー スマート値の詳細についてご確認ください。
{{approval.completedDate}} - 承認の完了日を返します。他の日付のスマート値と組み合わせられます。日付のスマート値に関する詳細についてご確認ください。
{{approval.decision}} - 承認の最終決定を返します。
フィールドまたは値が存在しない場合は空の値 ({{invalid reference}}) を返します。これを避けるためにデフォルト値を指定できます。
たとえば、無効な参照に値が含まれていない場合、{{invalid reference|"Hello world"}} を使用して Hello world を表示できます。
この内容はお役に立ちましたか?