仕事でChatworkのAPIを使う機会があったので、備忘録代わりに使い方を解説していきます。
使用言語はPHPです。
ChatworkのAPIを使ったWebアプリケーションを作ってみたいという方は、ぜひ参考にしてみてください。
Chatwork APIを使ってできるようになること
他のチャットツールと組み合わせることで、異なるツール間でメッセージのやり取りができるようになります。
これを応用すれば、例えばLINEから送信したメッセージをChatworkに投稿、逆にChatworkから送信したメッセージをLINEへと投稿することができます。
Chatwork APIを使うための準備
ChatworkのAPIを使ってメッセージのやり取りを行うには、
- APIトークン
- ルームID
これら2つが必要になります。
まずは、それぞれの取得方法について解説していきます。
API Tokenの取得
まず、APIトークンの取得方法です。
右上のメニューから、API設定をクリックします。
API Tokenの項目を選択し、パスワードを入力して表示ボタンをクリックすると、トークンが表示されます。
こちらのトークンを控えておいてください。
ルームIDの取得
ルームIDの取得は簡単です。
まず、投稿したいチャットのページに行きます。
そして、URLを見てください。
ridと書かれている後ろの数字がルームIDになります。
Chatwork APIを使ってメッセージを投稿する
では、実際にAPIを使ってChatworkへとメッセージを投稿してみましょう。
ソースコードはこちらです。
<?php
$msg = array(
'body' => '送信メッセージ'
);
$token = 'APIトークン';
$room = 'ルームID';
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER,
array('X-ChatWorkToken: '.$token));
curl_setopt($ch, CURLOPT_URL, "https://api.chatwork.com/v2/rooms/".$room."/messages");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($msg, '', '&'));
$result = curl_exec($ch);
curl_close($ch);
$msgには、Chatworkへと投稿したいメッセージ
$tokenには、APIトークン、
$roomには、ルームID
これらをそれぞれ入れるだけで、Chatworkへの投稿ができるようになります。
$resultに実行結果が入っているため、実行結果をログなどに書き出したりしたい場合は、こちらを使ってください。
また、実際にAPIを実行しているのはcurlなので、それぞれの詳しい動作を知りたい方は、curlのオプションについて調べてみてください。
Chatwork APIを使ってPHPでメッセージを投稿する方法まとめ
- APIトークン
- ルームID
これら2つを取得するだけで、とても簡単にChatwork APIを使ってメッセージ投稿を行うことができます。
このAPIを使うことで、他のチャットツールと連携して、例えばLINEからChatworkへとメッセージ投稿ができるようなります。
他のチャットツールで、メッセージを受信する方法についての解説は、また次の機会に解説していきたいと思います。