メインコンテンツまでスキップ

Word テンプレート トークンリファレンス

Word テンプレートで使用できるデータパス (バインディング) の完全な一覧です。製品内のトークンリファレンスパネル、およびバリデーターが適用するバインディングカタログと同じ内容です。ここに載っていないパスはエディターが警告します。文法とフォーマッターについては Word テンプレートモードを参照してください。

このページの読み方

  • スカラー バインディングは値トークンで使用します: ${issue.summary}
  • コレクション バインディングはループで使用します: ${#each issue.subtasks as sub}…${/each}。ループ内では、ループ変数を通じて項目のフィールドにアクセスします: ${sub.key}
  • ティアA は一般提供。B は課題バンドルが既にデータを保持しているため同梱されるもの。C は表示されるが バインドできない もので、対応範囲を正直に示すために掲載しています。
  • どのルートが使えるかはエクスポートコンテキストによって決まります。

エクスポートコンテキストとルート

Word テンプレートは 7 つのコンテキストのいずれかで実行され、それぞれ利用できるトップレベルのルートが異なります。

コンテキスト利用できるルート
single-issueissuegeneratedAt
automation (Jira Automation アクション)issuegeneratedAt
multi-issue (JQL / ボード)issuesissueGroupsgeneratedAt
scheduledissuesissueGroupsgeneratedAt
sprintissuesissueGroupssprintgeneratedAt
releaseissuesissueGroupsreleasegeneratedAt
backlogissuesissueGroupsbackloggeneratedAt

generatedAt (日時) は すべての コンテキストで利用できます。

ティア A — 課題のデータ面 (issue.*)

single-issueautomation で利用できます。同じフィールドが issues コレクションの各要素の形にもなります。${#each issues as it} の中では ${it.key}${it.summary} のように使用します。

スカラー

パス
issue.key文字列
issue.summary文字列
issue.descriptionリッチテキスト (ADF)
issue.statusステータス
issue.status.category文字列
issue.priority優先度
issue.assigneeユーザー
issue.assignee.displayName文字列
issue.reporterユーザー
issue.reporter.displayName文字列
issue.created日時
issue.updated日時
issue.dueDate日付
issue.parent.key文字列
issue.parent.summary文字列
issue.parent.status文字列

ユーザー型の値は既定で表示名を出力します。user フォーマッターで一部を選択できます (例: ${issue.assignee | user("displayName")})。リッチテキストの値は書式付きで出力され、| plain() で書式を取り除けます。

コレクション

コレクション項目のフィールド (ループ変数からの相対)
issue.labelsプリミティブのリスト — ループ変数がラベル文字列そのもの
issue.componentsname
issue.fixVersionsnamereleased (真偽値)
issue.affectsVersionsname
issue.subtaskskeysummarystatuspriorityassigneedueDate
issue.commentsauthor (ユーザー)、author.displayNamebody (ADF)、createdupdated
issue.attachmentsfilenamemimeTypesizeisImagecreatedauthor.displayNameメタデータのみ。バイナリと URL は含みません
issue.issueLinkstypeNamedirectionlinkedIssue.keylinkedIssue.summarylinkedIssue.status
issue.worklogsauthor.displayNametimeSpenttimeSpentSecondscreatedstarted

例:

${#each issue.worklogs as wl}
${wl.author.displayName}: ${wl.started | date("yyyy-MM-dd")} に ${wl.timeSpentSeconds | duration("hm")}
${/each}

ティア A — 複数課題のルート

multi-issuescheduledsprintreleasebacklog で利用できます。

パス種別項目のフィールド
issuesコレクション課題のデータ面全体 (ループ変数からの相対)
issueGroups.fixVersionsコレクションkeytitleissues
issueGroups.sprintsコレクションkeytitleissues
issueGroups.assigneesコレクションkeytitleissues
issueGroups.worklogAssigneesコレクションkeytitleissues

例 — グループ化してから、各グループ内の課題を反復します。

${#each issueGroups.assignees as group}
## ${group.title}
${#each group.issues as it}
- ${it.key}: ${it.summary}
${/each}
${/each}

ティア A — コンテキストのルート

それぞれのコンテキストでのみ利用できます。

sprint

パス
sprint.sprint.name文字列
sprint.sprint.goal文字列
sprint.sprint.stateオプション
sprint.stats.issueCount数値
sprint.stats.percentDone数値

release

パス
release.release.name文字列
release.release.releaseDate日付
release.release.released真偽値
release.stats.issueCount数値
release.stats.percentDone数値

backlog

パス型 / 項目のフィールド
backlog.board.boardName文字列
backlog.board.boardTypeオプション
backlog.stats.totalIssueCount数値
backlog.groupsコレクション — kindnameissueCountissues

ティア A — メタデータ

パスコンテキスト
generatedAt日時すべて

ティア B — 変更履歴

パス種別項目のフィールド
issue.changeHistoryコレクションauthor.displayNamecreateditems

ティア C — 表示されるがバインドできない

概念としては存在しますが解決できません。エディターと検証が対応範囲を正直に示せるように掲載しています。

機能備考
issue.jsmJira Service Management のリクエスト・SLA・承認の領域 — 見送り。
テンプレート内 JQL移行スキャナーが検出して診断しますが、実行しません
Tempo作業ログに Tempo のミラーが存在する場合がありますが、バインドされていません。
Xray / Zephyrテスト管理フィールドにはサードパーティ製アプリが必要です。
Assets / Insightオブジェクトフィールドは見送りです。

カスタムフィールド

カスタムフィールドは単一の名前空間でバインドします。

${ issue.customFields.<フィールドID>.<…> }
  • 未知のフィールド ID は 緩やか に扱われます。エディターは警告を表示し値が空になることがありますが、強く遮断することはありません。そのため、そのサイトに存在しないフィールドを参照していてもテンプレートは失敗しません。
  • issue.customFields 単体 (マップ全体) は 決して バインドできません。
  • 安全な識別子文字のみが許可され、__proto__prototypeconstructor のセグメントは拒否されます。

Xporter から移行する際の注意

移行スキャナーは、よくある Xporter のフィールド名に対して Exportelier のパスを提案します。提案が実際に解決されるために、次の 2 点を押さえてください。

  1. 自動変換が直すのは構文であって、パスの存在ではありません。 書き換えの形は正しくても、対象がこのページに実在するバインディングでなければ unknown-binding の警告になります。
    • カタログに存在しないもの: Creatorissue.creatorResolutionissue.resolutionProjectissue.projectIssueType/Typeissue.issuetype
    • 大文字小文字の不一致: DueDateissue.duedate と提案されますが、実際のバインディングは issue.dueDate です。
    • 種別の不一致: Labels はスカラーとして提案されますが、issue.labels はコレクションです。ループを使用してください。
  2. 課題リンク。 エイリアス Linkslinks と提案されますが、実際のバインディングは issue.issueLinks です。

移行の全体像はXporter 構文: 何が動くかを参照してください。

常に許可されないパス

安全のため、コンテキストにかかわらず unsafe-template エラーで拒否されるパスがあります。内部・資格情報・URL を含むフィールドです。authcontextforgeinternalsecretsstoragetoken などのルートや、accountIdapiTokenavatarUrlbaseUrlcontentUrlthumbnailUrlcookiesessionheadersprivatestorageRef で終わるパスが該当します。このページに掲載されたバインディングを使っていれば、これらに触れることはありません。