Chatwork で仕事をしているのに、大事な連絡だけ Gmail に届く。メールを見に行く手間を減らしたい方に向けて、条件に合うメールを Chatwork のルームへ自動で投稿する手順を説明します。
結論
Samurai App のワークフローで Gmail の受信を起動のきっかけにし、「外部サービス実行」ステップで Chatwork の CHATWORK_POST_MESSAGE(メッセージの投稿)を呼びます。
「通知先へ送る」は使いません。Chatwork の投稿 API はヘッダーに API トークンを求めるため、URL を登録するだけの通知先とは形が合いません。代わりに API トークンを接続し、人のいない実行から書き込みます。この書き込みの扱いを先に決めておくことが、Slack へ流す場合との大きな違いです。
できること・できないこと
トークンの発行に申請が要ることがあります。 パーソナルプラン以外では、組織の管理者への申請が必要です。管理者の承認待ちで止まりやすいところなので、先に申請してください。
投稿の上限はルームごとにあります。 同じルームへの投稿とタスク作成は合わせて 10 秒に 10 回までで、超えると 429 が返ります。全体でも 5 分に 300 回までです。メールを絞らずに流すと、まとまって届いたときに当たります。
本文は 1 字以上 65,535 字以下です。 空の本文は送れません。件名の無いメールや本文の無いメールを想定し、差し込む項目を選びます。
記法がそのまま働きます。 Chatwork の本文は [info][title]…[/title]…[/info] のような記法で囲めます。メールの本文をそのまま差し込むと、差出人が書いた [To:…] のような文字列も一緒に投稿に入るので、外部から届く本文は差し込まないのが安全です。
Gmail は最大 15 分遅れます。 定期的に見に行く方式のためです。
無人の書き込みの扱い
ワークフローの「外部サービス実行」は、AI を通さず決めた操作を 1 回呼びます。公開したバージョンの実行では、次のように動きます。
- 書き込みの操作は、既定なら承認カードを出さずに実行され、承認の記録に残ります
- 管理者が「毎回確認」にした操作は断られます。無人の実行には聞く相手がいないためです
- 「禁止」にした操作も断られます
投稿の文面は body に書いたとおりで、AI が書き換えることはありません。文面を AI に作らせる場合は、前に「AI で生成」ステップを置きます。
どの接続で動かすかも決めておきます。既定では実行を始めた人、トリガーならトリガーを作った人の接続で動きます。担当者の異動で止めたくなければ、ステップの「実行に使う認証情報」から「このワークフローに貸す」で接続を固定できます。
用意するもの
- Chatwork の API トークンと、投稿先のルームに入っているアカウント
- Samurai App の「コネクタ」での Gmail と Chatwork の接続
- ワークフローにサービス連携を付けられる権限(マネージャー以上)
手順
1. Chatwork の API トークンを発行する
Chatwork の画面右上の利用者名から「サービス連携」を開き、左のメニューの「APIトークン」で発行します。パーソナルプラン以外では、API を使うアカウントでログインして組織の管理者に申請します。
2. Chatwork と Gmail を接続する
「コネクタ」の画面で Chatwork を追加します。接続するときに認証情報の入力を求められるので、手順 1 のトークンを入れます。Gmail も同じ画面で追加し、自分のアカウントで連携します。コネクタの追加は管理者とマネージャーの操作です。
3. ルーム ID を調べる
CHATWORK_POST_MESSAGE にはルーム名ではなく room_id を渡します。チャットで「Chatwork のルーム一覧と ID を出して」と頼むと調べられます。
4. ワークフローを作る
「新規作成」で下書きを作り、「ワークフローの入力」に名前 event、種類「項目の組」を足します。
次に「つなぐ」の「外部サービス実行」を足して CHATWORK_POST_MESSAGE を選び、渡す値を埋めます。
| 名前 | 値 |
|---|---|
room_id |
手順 3 のルーム ID |
body |
下の文 |
[info][title]新着メール: {{input.event.subject}}[/title]差出人: {{input.event.sender}}[/info]
「保存」し、「バージョン」タブの「バージョン N を公開」で公開します。
5. 起動を付ける
「トリガー」タブの「サービス連携を追加」で Gmail の接続を選び、「どうなったら動かすか」で「New Gmail Message Received Trigger」を選びます。「絞り込み」の query には Gmail の検索窓と同じ条件を入れます。
from:billing@example.com -subject:配信停止
絞らないと受信したメールがすべて届き、1 件ごとに約 0.5 円かかるうえ、Chatwork の投稿の上限にも近づきます。
6. 投稿だけ先に試す
CHATWORK_POST_MESSAGE のステップを選び、「テスト」タブの「このステップを試す」で、input.event の代わりの値を入れて「試す」を押します。外部への操作は実際に行われるので、試し用のルームを選んでください。
動かないとき
- ステップが断られる: 管理者がこの操作を「毎回確認」か「禁止」にしています。無人の実行では承認できないので、管理者に設定の変更を頼みます
- 429 で失敗する: 同じルームへの投稿が 10 秒に 10 回を超えています。約 10 秒待って、実行の画面の「失敗したステップからやり直す」を押します。続くようなら
queryを絞ります - 差し込んだ値が無いと出て失敗する: そのメールに無い項目を参照しています。「最近の実行」の入力で届いた項目を確認します
- 自分では動くのにトリガーでは失敗する: 既定ではトリガーを作った人の接続で動きます。その人が Chatwork を接続するか、「このワークフローに貸す」で接続済みのアカウントを固定します
よくある質問
Chatwork のタスクとして登録できますか
できます。操作を CHATWORK_CREATE_TASK にし、room_id、body、担当者の to_ids(カンマ区切りのアカウント ID)を渡します。投稿と同じ「10 秒に 10 回」の上限に数えられます。
添付ファイルも Chatwork に送れますか
この手順は文字の投稿だけです。{{input.event.attachment_list}} で添付の一覧を JSON の文字として差し込むことはできますが、ファイルそのものは投稿されません。
Chatwork のメッセージをきっかけに動かせますか
サービス連携の出来事に Chatwork はありません(2026 年 11 月 4 日時点)。この記事の向きは、Gmail が起動で Chatwork が投稿先です。