iPaaSサービス「Integromat」にkintoneモジュールが搭載されたので触ってみた

# はじめに

つい先日、IntegromatというiPaaSサービスにkintoneモジュールが搭載されたので、使ってみました。
まさに記事タイトル通りです。

# Integromat

チェコに本社があるサービスで、LINEやSlackなどのSaaSサービス同士をノーコードで連携させることができるiPaaSです。
（ZapierやMS Power Automateと同じ立ち位置ですかね）

対応しているSaaSが多く、また機能も高機能で、
最初触ったときは **「これがノーコードでできるのか！！」** と感動しました。

対応SaaSはこのページで一覧確認ができます。

https://www.integromat.com/en/integrations

ざっくり1000モジュールはあります。すごい。
![スクリーンショット 2021-06-23 11.41.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/a6a7bb66-a9b3-6769-3d28-cf345cefb09c.png)

## フリープラン

`1000リクエスト/月まで無料`というフリープランがあり、お試ししやすいです。

※ 「1リクエスト=1実行」ではないのでご注意ください。仕組みが複雑になると1回の実行で50リクエストとか消費する場合もあります。

# 今回作るもの

LINEモジュールも搭載されていたので <font color="red">**LINEでつぶやかれたトーク内容をkintoneへ登録する**</font> という仕組みをノーコードでやりたいと思います。

# 準備するもの

- Integromatアカウント
- kintone環境
- LINE Bot

## Integromatアカウント

https://www.integromat.com/en

サイトにアクセスして右上からSign upします。GoogleのOAuthなども使えるので楽ちんです。
※ 今は日本語には非対応ですが、そこまで難しくないので問題ないと思います。

## kintone環境

kintone環境を持っていない方はぜひ開発者ライセンスを取得して試してみてください。

https://qiita.com/RyBB/items/73c50f1751ad137ba410

今回はLINEのトーク内容を保存するアプリを作成します。

| フィールド名 | フィールドタイプ | 説明|
| :-- | :-- | :-- |
| 作成日時 | 作成日時 | kintoneにデータが登録された日時（自動挿入）|
| LINE ID | 文字列1行 | LINEのアカウントID（トーク発言者情報） |
| トーク内容 | 文字列複数行 | LINEトーク内容 |

フィールドコードは気にしなくて良いです。なぜならIntegromat上でフィールドが選べるので！！

![スクリーンショット 2021-06-23 11.58.13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/04ba421d-1d47-3dbd-5700-f0f024be2d56.png)

## LINE Bot

LINE Botを作成します。ここはいろいろな記事があるので割愛します。
`Channcel Access Token`と`User ID`をIntegromat上で使うのでメモしておいてください。
あと、Integromat上でWebhook URLを発行するのでそれを後ほどLINE Bot上に設定します。

## Integromatの設定（メイン開発）

Integromatにサインインしたら右上の`Create a new scenario`からシナリオ（フロー）を新規作成します。
モジュール選択画面に移るので「Kintone」と検索するとKintoneモジュールが出てきます。
※ US向けっぽいのでkは大文字でUSロゴでした。
![スクリーンショット 2021-06-23 11.34.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/211f0cd0-af37-7969-1b5c-fced79781e33.png)
あとLINEも同じように選択して`Continue`でシナリオ設定画面に移ります。
※ シナリオ設定画面からもモジュールを追加することは可能です。
![スクリーンショット 2021-06-23 11.34.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/c8670b96-f263-9f00-a59f-7780d89271ae.png)

---

まずはLINEの設定をするのでLINEモジュールを選んでもろもろ設定します。

1. `Watch Events`を選択
1. Webhookの`Add`を選択して新規でコネクションを設定
1. Connectionの`Add`を選択して`Channcel Access Token`と`User ID`を入力
1. IntegromatのWebhook URLが発行されるので、それをLINE Botに設定

LINE Botを作ったことのある方なら何の問題もないですね。

---

次に、kintoneモジュールを選んでもろもろ設定します。

1. `Create a Record`を選択
1. Connectionの`Add`を選択してConnection typeで`Kintone`を選択
1. `Sub Domain`、`Username`、`Password`に自身のkintone環境のものを入力
1. Domain Nameで`cybozu.com`を選択
    1. US版kintoneを使う場合は`kintone.com`で
1. App IDでアプリが選べるので作成したアプリを選択
    1. リストに出てこない場合は右にある`map`を選んで直接アプリ番号を入力できます
    1. mapから直接入力した場合は一度OKを押して、再度設定を開くといろいろ出てきます
1. フィールド設定`LINE ID`のvalueで`Events[] > Source > user ID`を選択
1. フィールド設定`トーク内容`のvalueで`Events[] > Message > Text`を選択

![スクリーンショット 2021-06-23 12.21.47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/6b73024d-90ea-3f2a-e22a-321d7985a04c.png)
Sub Domainの説明欄には`https://example.kintone.com/`しかなくて、
初見では「え？US版のみ？」となりましたが、ちゃんと下の「Domain Name」で`cybozu.com`も選べました！

そして一覧でアプリの選択ができるのはすごい高機能！

> ログイン名とパスワードを入力したので[アプリ情報の一括取得API](https://developer.cybozu.io/hc/ja/articles/202931674#step2)をつかってるんですかね。
> → ただデフォルトでlimitは100なので、ループ処理はしてない模様。
> 自分の場合、今回作ったアプリはリストに出てこなかったです 笑

![スクリーンショット 2021-06-23 12.35.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/525cd0e8-7838-9dde-a1bf-4ac8ad1a003b.png)
Integromatの真骨頂はまさにここで、モジュール同士の紐付けが圧倒的に楽です。

![スクリーンショット 2021-06-23 12.39.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/2534f02e-6dd1-1135-3e9b-493be5d7548c.png)

---

設定はこれで終わりなので左下の`Run once`を押してテスト実行！
待機状態になるのでLINE上でなにかつぶやくと・・・
![スクリーンショット 2021-06-23 12.52.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/62895e82-b3cb-e60e-c261-960bc35c7c27.png)

kintoneにデータが登録された！！
![スクリーンショット 2021-06-23 12.52.48.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/153051/f48671a3-40e4-fed2-eef0-3f29a7b44a8f.png)
※ LINE IDはこのBot上（正確にはこのProviders上）でしか使えないものなので、公開しても問題はないですがなるべく隠しましょう 笑

## 発展

常にこのフローを動かす場合は`SCHEDULING`をONにすればOKです！

前に記事化した「LINE Botの友達情報管理をkintoneでやる」も作ればもっと活用が進みますね！
→ こっちもIntegromat使えばノーコードで実現できると思います。

https://qiita.com/RyBB/items/23221bafd8231579b396

# おわりに

LINE Bot連携が本当にノーコードで実現できるとは思わなかったです。すごすぎる！！
→ 開発時間は30分くらいでした。
LINEが飛ばすトーク内容のデータ形式だったり、
kintoneに格納するためのデータ形式だったりはまったく意識することなく使えるのも最高ですね！

これは今後も期待できるな〜とわくわくさせてくれるサービスですね！
それでは！≧(+･` ཀ･´)≦