REST API連携も可能なMagic xpi
Magic xpiは企業内の基幹システムや各種アプリケーション、クラウドサービスをノーコーディングで連携・統合を可能とするシステム連携プラットフォームです。
データ連携・統合と言うとBIシステムの分析対象となるデータウエアハウス構築用途のETLやEAIツールと思うかもしれませんが、それだけではありません。Magic xpiは最近のSaaSシステムがシステム間連携に提供しているREST APIの利用も可能です。
今回は連携先SaaSシステムとしてkintoneを用い、kintone側で解説しているREST APIの使い方をMagic xpiのREST Clientにどのように指定するのか、必要最低限の設定をし確認をしてみます。
動画で解説
kintone側の設定
API連携テスト用アプリとして2行のデータを用意しました。

kintoneアプリで、REST APIを利用可能とするため、歯車アイコンの「アプリの設定」から「カスタマイズ/サービス連携」-->「APIトークン」の順に進み、「APIトークン」画面で「生成する」ボタンをクリックします。
APIトークンが生成され表示された例を参考にMagic xpiのREST Clientを設定します。

Magic xpi側で接続リソースの設定
接続リソースを「REST_Client_1」と言う名前で作成し、「サーバURL」にはkintoneのREST API例のパス名である/record.json以前の「https://xxxxxxxxx.cybozu.com/k/v1」を指定します。

REST APIのパス名「/record.json」をMagic側へ指定するため「パス」-->「パラメータ」の順に進み、「パス名」に/record.jsonを指定しパラメータとしてkintone側のAPI連携テスト用アプリを識別するappパラメータと今回2行用意したデータの1番目であるレコードidをそれぞれ指定します。appパラメータとidパラメータが、今回偶然1ですが、appパラメータはkintoneアプリ別に異なります。

次にkintone側で先ほど生成した認証idと言えるAPIトークンをMagic側に指定します。APIトークンを生成した時に表示されたREST API例は下図でした。「-H "X-Cybozu-API-Token: YOUR_TOKEN"」の部分をMagic側に指定します。

-Hなので、ヘッダにX-Cybozu-API-Tokenと言う名でYOUR_TOKEN、つまり生成したAPIトークン「G3yjA7HtCIDTqZ9BA3g0gIYUf5YEpNcRaiUEB0AB」をMagic側に指定します。
下図のようにヘッダパラメーターのタブからパラメータとしてX-Cybozu-API-Tokenと生成したAPIトークンを指定します。

Magic xpi側でREST Clientの設定
ツールボックスの下方に存在するREST Clientを用います。REST Client配置後、正しくリソースが指定されているかプロパティ欄からリソース名を確認します。(下図①)
REST Clientを右クリックして設定をします。リソースにパスを1つしか設定していないのでパス設定した/record.jsonが指定されています。(下図②)
データ取得が正しく出来るのか簡単に確認するため、今回は、kintoneから受け取ったデータをファイルにします。(下図③)今回は分かり易いようにcドライブ直下のtmpフォルダーにresults.jsonというファイルを予め作成し指定しました。(下図④)

データ取得確認
kintoneから1行目データが取得できるのか確認するためフローをデバッグ起動します。出力結果を保存したファイル「c:\tmp\results.json」内容とkintone側データを見比べると付随したデータがありますが、下記のように対応している事が分かります。

次に2行目のデータも取得するため、デバッグを停止します。REST Client右クリックメニューの「設定」-->「パラメータ」の順に進みます。

kintoneアプリから2行目を取得したいので、idパラメータが1だったところを2に修正します。

kintoneから2行目のデータが取得できるのか確認するため、フローをデバッグで動かしてみます。出力結果を保存したファイル「c:\tmp\results.json」内容とkintone側データを見比べると、2行目のデータを取得している事が分かります。

関連リンク
お問合せ
https://alpcom.co.jp/contact/
データ活用支援サービス関連動画のご紹介
https://www.youtube.com/playlist?list=PLCT26wue-OnkWkkHZyh7eke0PMvsh-Bfs
アルファー・コミュニケーションズ公式YouTube
https://www.youtube.com/channel/UCTqwZsRRpAs9NPTUz2yH3ow/videos