
今回は Gmail に関する自動工程について説明します。
Gmail は、Google 社が提供する電子メールサービスです。インターネットへ接続できる環境さえあればスマートフォンやパソコンなどのデバイスを問わず利用することができます。また、API を使って各種操作を行うこともでき、今回紹介する自動工程もそれを用いています。
- ビジネス向け(Google Workspace でご利用の) Gmail のみが対象となります
- (@gamil.com のアドレスのアカウントは対象外です)
ビジネス向け Gmail について、詳しくは ビジネス向け Gmail の公式ヘルプページをご覧ください。
各自動工程について
Gmail に関する自動工程には、標準で使用可能な「開始: Gmail: メール受信時」「Gmail: メール取得 」「Gmail: メールのラベルを解除」があります。
まず、各工程について簡単に説明します。
開始: Gmail: メール受信時
Gmail で指定されたラベルのメールを受信すると、プロセスが開始されます。あらかじめラベルを指定することで、受信メールのうち、条件を満たすメールのみを対象とすることができます。新規開始されたプロセスでは、メール ID がデータ項目に保存されます。

Gmail: メール取得
ID で指定されたメールの情報を取得し、データ項目に格納します。

Gmail: メールのラベルを解除
ID で指定されたメールから、指定されたラベルを削除します。

これらの自動工程を使用するには、ご利用の Google Workspace のセキュリティ設定で「Questetra BPM Suite Gmail Items」が信頼できるアプリとして設定されている必要があります。以下に示す手順で設定してください。
Google Workspace セキュリティの設定
(この操作は ご利用の Google Workspace での管理権限を有するアカウントで行ってください)
まず、Google 管理コンソール(admin.google.com)にログインします。サイドメニューの[セキュリティ]>[API の制御]の画面で「サードパーティ製アプリのアクセスを管理」をクリックします。

[新しいアプリを設定]から[Oauth アプリ名またはクライアント ID]を選択し、クライアント ID ”13039123046-t87nmrj499ffoa58asehks3asajvgqnh.apps.googleusercontent.com” を入力して[検索]します。

「Questetra BPM Suite Gmail Items」が表示されたら、それを[選択]してチェックボックスにチェックを入れて[選択]をクリックします。


「信頼されている: すべての Google サービスにアクセス可能」にチェックを入れて[CONFIGURE]をクリックすれば設定が完了します。


これで、セキュリティ設定は完了です。
Google と Questetra の連携設定
Questetra と Gmail の連携設定を行います。
- HTTP 認証設定を追加するにはシステム管理者権限が必要です
- 追加登録された HTTP認証設定は、同一ワークフロー基盤の他のアプリでも共有されます
- セキュリティやプライバシーの問題を避けるため、個人のアカウントではなく専用のアカウントを用意して運用することを推奨します
- (C2: ラベル の設定によっては全ての受信メールが他のアプリからワークフローに取り込まれる可能性があります)
Questetra のワークフローアプリの編集画面にて上記の自動工程アイコンを設置後、「開始: Gmail: メール受信時」の設定項目の「C1: OAuth2 設定」の[設定はこちらから]をクリックすると「HTTP 認証設定 Gmail API (Readonly)」という設定画面が開きます。
[追加]をクリックし、[名前]を指定します。(任意の文字列:後で見て分かり易いものが良いでしょう。)

追加した設定の[トークンの取得]をクリックすると Google の認証画面へと移ります。

監視対象の Gmail アカウントで連携を許可します。

これで Gmail との OAuth2 認証のトークンが取得されました。([トークンの取得]ボタンの上部に「○(リフレッシュトークン)」と表示されます。)
「開始: Gmail: メール受信時」の設定にもどり、「C1: OAuth2 設定」で追加した設定の名前を選択して指定します。
Gmail でのラベルの設定
Gmail での設定について説明します。Gmail のアカウントに着信するメールの中から、Questetra を起動させるものにラベルを付加します。
ラベルには「システムラベル」と呼ばれる既定の物と、ユーザ自身が任意で追加/編集できるラベルがあります。システムラベルには「受信トレイ」「スター付き」「重要」などがあります。本アプリではこのうち「スター付き」を利用します。
もう一つラベルを使用します。ここでは「Questetra」というラベルを作成して、”questetra” の文字列を持つメールにこのラベルとスター付きの両方が付けられるように条件を設定します。ラベルの作成は、左メニューの[もっと見る]から最下部[+ 新しいラベルを作成]で行います。「新しいラベル名」に “Questetra” と入力して[作成]すると完了ですが、この時の入力文字列が後のワークフローアプリの設定に関わりますので正確に入力してください。

次に、着信メールに付与する条件を設定します。画面右上の[歯車アイコン] > [全ての設定を表示]で設定ページを開き、[フィルタとブロック中のアドレス]を選択します。「新しいフィルタを作成」で対象とするメールを絞り込む条件を設定します。この例では「含む」に “questetra” と入力して[フィルタを作成]します。(ここでは大文字小文字の区別はありません)次に判別したメールに対しての操作を指定します。この例では「スターを付ける」と「ラベルを付ける」にチェックを入れ、「ラベルを選択」から “Questetra” を指定して[フィルタを作成]で完了です。これらの設定により、件名や本文に “questetra” が入っているメールにはスターと “Questetra” のラベルが付けられるようになりました。

サンプルアプリ
これらの自動工程を使って作成したサンプルアプリのワークフロー図がこちらです。

このアプリは Gmail の受信を監視し、指定した条件のメールが受信されれば自動でプロセスを開始してメールが持つ情報をプロセスのデータとして保存します。メールを指定する条件には Gmail の「ラベル」を利用します。
ワークフローアプリの設定
開始イベント「Gmail 開始」は定期的に Gmail の着信メールを監視し、新着メールの中にスターと “Questetra” ラベルがついているものを検知するとワークフロープロセスを開始します。次の工程「メール保存 」でメールの情報をデータ項目にセットします。「スターを削除」では読み取りを終えたメールからスターを削除します。こうすることで、Gmail の一覧でスターが無いメールはワークフローに取り込み済みであることが分かります。「確認」工程で取得された情報を閲覧できます。
データ項目の設定
データ項目は以下のようになっています。
データ項目名 | タイプ | 必須 | 「確認」工程 | 説明 |
件名 | – | – | 表示のみ | プロセスの件名です。 |
メール ID | 文字列型 (単一行) | – | 表示のみ | Gmail で個々のメールに与えられた ID です。(message ID とは異なる) |
Fromアドレス | 文字列型 (単一行) | – | 表示のみ | Gmail のFrom アドレスです。 |
From Name | 文字列型 (単一行) | – | 表示のみ | Gmail のFrom 名です。 |
To/Cc/Bcc アドレス | 文字列型 (複数行) | – | 表示のみ | Gmail の To/Cc/Bcc アドレスです。 (Bcc は自分のアドレスのみ) |
To/Cc/Bcc Name | 文字列型 (複数行) | – | 表示のみ | Gmail の To/Cc/Bcc 名です。 |
受信時刻 | 日時型 | – | 表示のみ | Gmail の受信時刻です。 |
メール件名 | 文字型 (単一行) | – | 表示のみ | Gmail の件名です。 |
本文 | 文字列型 (複数行) | – | 表示のみ | Gmail の本文です。 |
添付ファイル | ファイル型 | – | 表示のみ | Gmail に添付されたファイルです。 |
RFC 822 Message-ID header | 文字列型 (単一行) | – | 表示のみ | Gmail の Message ID |
「開始」イベントで取得された「メール ID」が後続の「メール取得」「ラベル解除」の工程で利用されます。
「Gmail 開始」(開始: Gmail: メール受信時)の設定
「Gmail 開始」イベントの設定項目は以下のとおりです。
項目名 | 必須 | 説明 |
C1: OAuth2 設定 | ○ | Google への接続に使用する HTTP 認証設定名を指定します。指定する名前の認証設定であらかじめOAuth2 トークンを取得しておく必要があります(「Google と Questetra の連携設定」を参照)。 |
C2: ラベル | – | 指定されたラベルの有無によってプロセスを起動する受信メールを絞り込みます。複数のラベルを指定する場合は改行して入力します。空白にすれば、受信トレイに着信した全てのメールが対象となります。 このサンプルでは Questetra STARRED と入力します。(大文字/小文字も区別されるので正確に入力してください) |
C3: メール ID を保存するデータ項目 | ○ | データ項目「メール ID」を選択して指定します。 |
C4: 受信時刻を保存するデータ項目 | – | データ項目「受信時刻」を選択して指定します。 |
C5: RFC 822 Message-ID ヘッダを保存するデータ項目 | – | データ項目「RFC 822 Message-ID header」を選択して指定します。 |
アプリをリリースしてからしばらくすると、認証されたアカウントの Gmail の受信トレイを監視(ポーリング)し始めます。初回のアクセスでは最新の受信メールを確認するのみで、プロセスの開始は行われません。2回目以後のアクセスではポーリング時に前回のアクセスとの差分をチェックし、新着のメールがあればそれぞれについてプロセスが開始されます。
「メール保存」(Gmail: メール取得)の設定
「メール保存」工程のの設定項目は以下のとおりです。
項目名 | 必須 | 説明 |
C1: OAuth2 設定 * | ○ | 「開始: Gmail: メール受信時」で指定したものと同じ設定名を選択して指定します。 |
C2: メール ID * | ○ | データ項目「メール ID」を選択して指定します。 「Gmail 開始」で保存された ID のメールが対象となります。 |
C3: From メールアドレスを保存する文字型データ項目 | – | 以下、用意されたデータ項目をそれぞれ選択して指定します。 |
C4: From 表示名を保存する文字型データ項目 | – | |
C5: To/Cc/Bcc メールアドレス一覧を保存する文字型データ項目 | – | |
C6: To/Cc/Bcc 表示名一覧を保存する文字型データ項目 | – | |
C7: 送信日時を保存する日時型データ項目 | – | |
C8: 件名を保存する文字型データ項目 | – | |
C9: 本文を保存する文字型データ項目 | – | |
C10: 添付ファイルを保存するファイル型データ項目 | – |
「Gmail 開始」によって開始されたプロセスは後続の「メール保存」工程でプロセス開始のきっかけとなったメールの内容を取得して保存します。
「スターを削除」(Gmail: メールのラベルを解除)の設定
「スターを削除」工程の設定項目は以下のとおりです。
項目名 | 必須 | 説明 |
C1: OAuth2 設定 * | ○ | [設定はこちらから]で、前述の Google 連携設定の手順で HTTP認証設定を追加します。 接続する API のスコープが異なるので同じ設定は使えません。 |
C2: メール ID * | ○ | データ項目「メール ID」を選択して指定します。 |
C3: 解除するラベル | ○ | STARRED と入力します(大文字) 複数のラベルを削除する場合は改行して入力します |
メールの保存が完了したら、「スターを削除」工程に進みます。ここで、Gmail での設定によって付加されたスターを削除します。こうすることで Gmail のメール一覧画面でも Questetra での保存が完了していることが分かります。
ここまでの自動工程が完了すると、「確認」工程で保存されたメール内容を確認できます。
今回は以上です。