チャットワークAPIでメッセージやタスクを追加する方法 天気予報データを取得して、メッセージによる自動通知も可能に

「チャットワークAPI(ChatWorkAPI)」を使った、自動でのメッセージ投稿やタスク追加の方法が、ジーニアスブログにて紹介されています。

チャットワークAPIを利用すると、自作のプログラムからチャットワークを操作したり、チャットワーク内で発生したイベントを外部のプログラムに渡す事ができます。
例えば

  • 自分宛てにメールがきたらチャットワークにメッセージとして流す
  • サーバーエラーを検知し関係者にタスクを振る
  • カレンダーに予定が追加されたら、チャットワークでタスクを振る

といった操作を実現することが可能になるそうです。

チャットワークAPIを利用する際は、プランに応じて手続き方法が異なります。

フリープラン・パーソナルプランの場合は、チャットワーク画面右上の「利用者名」から「API設定」を選択し、「API Token」でアカウントのパスワード入力することにより、利用申請とAPIトークンの取得ができます。

一方、ビジネスプラン・エンタープライズプランの場合は、組織管理者の申請が必要となるそうです。

ブログ記事ではPHPでの利用例として、天気予報情報をチャットワークにメッセージを投稿し、雨が降りそうな日には「傘を忘れないこと」というタスクを追加するための記述方法が紹介されています。

この際、メッセージを投稿する際に使用するAPIのエンドポイントは

/rooms/{room_id}/messages

タスク追加する際に使用するAPIのエンドポイントは

/rooms/{room_id}/tasks

というように指定すればいいそうです。

エンドポイントの中にある {room_id}には、投稿先のルームIDを入力することとなりますが、このIDはチャットワークの任意のルームをブラウザで表示する際のURLの末尾にある「rid」以降の数字を入力します。

このように簡単に操作ができるチャットワークAPIですが、1点注意が必要になります。

ブログ内では触れられていませんが、チャットワークAPI公式ページの説明によると、OAuth/Webhookについては、2018年8月現在、オープンβ版として一般公開されています。そのため、利用可能な機能が限定されていたり、想定した挙動にならない可能性があるようです。

チャットワークAPIを使ってメッセージの投稿やタスクの追加をしてみよう | ジーニアスブログ

チャットワークAPIドキュメント