Garoon REST APIでノンコーディングでガルキン連携をやってみた
こんにちは。インスタでキレイなお弁当やラーメンの写真を見るのが癒やしのダン吉です。
今回は、Garoon 新機能としてリリースされた「REST API」を使ったガルキン連携(Garoon × kintone のサービス連携)Tipsを、相変わらずのヘタなイラストを交えてご紹介します。
GaroonのREST API 誕生!
2018年5月に、cybozu developer network上で、GaroonのREST APIが公開されました!
トップページで表示中の上記バナーのキャッチフレーズ「他サービスとの連携がもっと身近に。」
なんだか洗剤の新製品のようなサワヤカなキャッチコピーですね。←私が考えました。
「もっと身近に」には、これまでよりも扱いやすいAPIが出ました、だから気軽に使ってね!というメッセージを込めています。
Garoon REST API とは
Garoonではもともと提供していたSOAP APIというAPIで、他システムとの連携は可能でした。
ではどう違うのか? というと。
REST APIもSOAP APIも、データを出し入れするAPIという意味では同じです。
しかし、REST APIの特徴としては、出し入れするときに、「GET(取得)」「POST(登録)」などのメソッド単位で行います。
それはGaroonに限った話ではなく、REST APIの動きのイメージとしては以下のような感じです。
▼REST APIは他サービスやシステムと、データを連携するAPI!
えーと、これでも結構頑張ったのですが、カンガルーです。うさぎじゃありません。ポッケあるでしょ。(急に強気に)
Garoonと他サービス間で、GETやPOSTでデータを連携しているといったあくまでイメージでとらえていただければと思います。
ちなみにカンガルーと他サービス間で飛び交っているのは妖精さん的な存在で、本物の赤ちゃんはGポッケの中という設定です。(何の設定?)
※ 2018年5月版時点では、「PATCH(更新)」「DELETE(削除)」というメソッドもあります。
REST APIだと何がうれしいかというと、業界のスタンダードである(=事例やサンプル、とれる選択肢がたくさんある)ということと、プログラミングがわからなくてもブラウザのツールで簡単に叩けるので、初心者にもやさしいということです。
本当に?と思った方は、REST APIの叩き方を初心者向けに詳しく解説した以下のブログを読んでみてください。
↓REST APIを「叩く」って何?ツール使ったら初心者でも簡単だった
ガルキン連携① 〜最強の日報編〜
では、この「もっと身近」な連携を実現してくれるGaroonのREST APIで何ができるのかをご紹介しましょう!
まずは、1つ目は、「最強の日報を作るガルキン連携」です。
実は、すでにcybozu developer networkでサンプルコードとともに紹介しています。
kintoneのアプリから、「Garoonの予定を取得」ボタンを押すと、
日付をキーにGaroonのスケジュールデータを取得します。
▼ 最強の日報サンプルの画面(赤で囲われた部分が、取得したGaroonのデータ部分です。)
イメージとしては以下のような感じで、kintoneのアプリ側からGaroon GET(取得)をします。
▼ ガルキン連携①イメージ: kintoneからGETメソッドでGaroonのスケジュールデータを取得
このサンプルの強みは何といっても実用性です!
kintoneの入力の手軽さやグラフ機能も活用しつつ、Garoonのスケジュールを手でコピペする手間から開放されるという...まさに「最強の日報」です。kintoneのアプリストアから簡単に作成できるアプリであるのも便利ですね。
kintoneのアプリにJavaScriptを適用する必要はありますが、掲載しているサンプルコードがほぼまるごと使えますので、試してみる価値ありです! 手順の詳細はこちらのTips記事へ。
ガルキン連携② 〜ノンコーディング編〜
最強の日報は、他サービス(今回はkintone)からGaroon GET(取得)をするパターンでした。
しかし、他サービスからGaroon POST(登録)をするTipsは世に出ていません。
そこで、今回、REST APIの敷居をもっと下げるために、Microsoft Flowを作ってノンコーディングで実現できるサンプルを作ってみました。
Microsoft Flowとは、複数のサービス間の連携を取り持って自動化できる、Web上のサービスです。概要はMicrosoft Flow本体のページにあります。
このサンプルは、kintoneのアプリで予定を登録したとき、Garoonのスケジュールにも同じ内容を登録するというものです。
▼ kintoneに登録すると、Garoonにも登録するサンプルの画面
以下のように、kintoneのアプリにレコードを登録すると...。
以下のようにGaroonのスケジュールに登録します。kintone & Garoonのほぼ同時登録です。
このサンプルの見どころは、ノンコーディングである点です。
Microsoft Flowを使い、ほぼプログラムのコードを書くことせず(実際にはAPIで送るデータを指定するところで、ちょっとしたミニミニコードはありますが)、連携ができたりREST APIを試したりできます。
イメージとしては以下のような感じで、Microsoft Flowを介してkintoneとGaroon間のデータ連携をします。
▼ ガルキン連携②イメージ: kintoneにレコードを追加すると、Microsoft Flowがデータを変換し、そのままPOSTメソッドでGaroonのスケジュールに登録
試してみたい方は、ざっくりとしたやり方をcybozu developer networkのナレッジノートに書きましたので、ご参照ください。
(ご質問もそちらで受けつけます!)
まとめ
Garoon REST APIで何ができるのかというざっくり説明と、初心者にも真似しやすいサンプルを2例ご紹介しました。
これを機にGaroon REST APIに興味を持っていただき、多くの方に気軽に使っていただけることを祈っています!
技術者向けサイト「cybozu developer network」
・API のアップデート情報の通知を受け取ることができます。
・5ユーザー、1年間無償の開発者ライセンスを申し込むことができます。
・Tipsやサンプルの動きを確認できるデモサイトを利用することができます。
・HTTP Client Tool for kintoneを利用することができます。