カテゴリー内の他の記事

第9回 kintone REST APIを利用したレコード追加

フォローする

(著者:Cstap 落合 雄一

はじめに

前回、はじめて更新時の処理について扱ってみました!今回は、kintone REST APIを使った追加処理に挑戦してみましょう(^^)

それでは、「各ユーザーがどのアプリのどのレコードを参照したか」を残す参照ログを作成しながらkintone REST APIを学んでいきたいと思います。(^^♪

アプリの準備

参照ログを格納する、下記のようなアプリを用意します。

フィールド名

フィールドタイプ

フィールドコード

閲覧アプリID

数値

閲覧アプリID

閲覧レコード番号

数値

閲覧レコード番号

閲覧者

作成者

閲覧者

閲覧日時

作成日時

閲覧日時

閲覧者を格納するフィールド「閲覧者」にフィールドタイプ: 作成者を利用している事に注目してください。これは、ログを仕掛けた別アプリを閲覧しているユーザー=APIを通して本アプリへデータ作成するユーザーとなるためです。また同様に「閲覧日時」も同じ理由です。

注意点として、このアプリのアクセス権でEveryoneに追加権限を設定しておく事を忘れずに。作成できたら、アプリIDは後で使うので控えておいてください。φ( ̄ー ̄ )メモメモ

反映する値の取得

このアプリに格納する値として、以下2つはデータ挿入時にkintoneによって自動で適切な値が差し込まれるため、こちらで何かする事はありません。

  • 閲覧者(作成者)
  • 閲覧日時(作成日時)

残る「閲覧アプリID」と「閲覧レコード番号」ですが、これらはレコード詳細画面が表示された時のイベント のeventオブジェクトのプロパティに入っているのでこれを使いましょう。

eventオブジェクトのプロパティについて忘れてしまった方は、第4回 レコードの値を利用してみよう(詳細画面編) をもう一度読んでみてくださいね(^^)

では、実際に取得出来るか試してみましょう。以下のスクリプトを、(先に作成したアプリではなく)閲覧ログを収集したいアプリに登録して詳細画面を開いてみてください。

上図は、第6回 サブテーブルの値を利用する で作成したJおじさんのアプリで実行した例です。きちんと思い通りの値が取れている事が確認出来ましたね。

kintone REST APIを利用する

さて、それではいよいよ実際のデータ登録に進みましょう。これには、kintone REST API (レコード)の レコードの登録(POST)を使う事になります。kintone上のJavaScriptでkintone REST APIを利用する手段としては kintone REST API リクエスト が用意されていますので、まずはここから説明していきます。

各パラメータに何を入れるかは、実際利用するkintone REST APIによって変わってきます。レコードの登録(POST)のレコードの登録(1件) のドキュメントと見比べながら、それぞれ埋めていきましょう。

 

pathOrUrl

引数の説明にもありますが、kintone.api.urlを利用するようにしましょう。また、kintoneのREST APIではゲストスペース内アプリの場合にパスが変わってしまうので、あとで混乱しないためにも第2引数にtrueを入れるよう習慣化しておくと良いかと思います。詳しい説明は URLを取得する(クエリ文字列無し)kintone.apiにゲストスペースでも使える正しいパスを指定する にありますので、こちらも確認しておいてください。

 

method

今回利用するAPI(/k/v1/record.json)は、同じURLでもリクエストのHTTPメソッドによって動作が変わる仕組みになっています。

  • GET: レコードの取得(1件)
  • POST: レコードの登録(1件)
  • PUT: レコードの更新(1件)

利用したい動作は参照ログアプリへのデータの挿入なので、この引数には'POST'を指定します。

 

params

レコードの登録(1件)のリクエストプロパティ を参考にJSON形式でパラメータを作成して渡しましょう。

細かい事は出来上がったものを見たほうが良いかも知れませんね。以下、実際に作成したスクリプトです。参照ログを格納するアプリのIDを皆さんが実際に作成したアプリのIDに書き換えて、ログを仕掛けたいアプリ(上の例でいくと、Jおじさんアプリ)に登録してください。登録する先はいくつでも構いません。

ばっちり、レコードが挿入できました。\(*^▽^*)ノ
分かってしまえば、何も難しい事はありませんね。

最後に

今回はより実践的な更新処理へ挑戦しつつ、はじめてkintone REST APIを利用する方法を紹介しました。kintone REST APIを利用する事で、これまでよりも高度なkintoneカスタマイズが出来るようになります。次回から、さらにこのあたりについて解説していこうと思います。

Let’s kintoneカスタマイズ\(^o^)/

このTipsは、2014年11月版で確認したものになります。

<<第8回 簡単な更新処理に挑戦してみよう | 第10回 kintone REST APIを利用したレコード取得>>

デモ環境

https://dev-demo.cybozu.com/k/14/

※デモ環境についての説明はこちら

記事に関するフィードバック

直接的に記事と関連がないご質問はcybozu developer コミュニティをご活用ください。

Avatar
赤座 久樹

こんにちは。初めてコメントします。

REST API便利ですね!かなり色々と応用できそうです。

 

「閲覧レコード番号」のフィールドコードですが、

冒頭「アプリの準備」の表では「閲覧レコード」

コード内の「params」オブジェクトでは「閲覧レコード番号」

となっており、このままでは値が取れませんでした。

 

アプリのフィールドコードを「閲覧レコード番号」に直してうまくいきましたが、

記事内のフィールドコードもどちらかに統一をお願いしますm(_ _)m

Avatar
cybozu Development team

赤座 久樹様

いつもお世話になっております。
cybozu.com developer network事務局です。

ご報告いただきありがとうございます。

「アプリの準備」の表のフィールドコードが間違っておりました。
申し訳ございません。

表のフィールドコードを「閲覧レコード番号」に修正させていただきました。
今度ともdeveloper networkをよろしくお願い致します。

Avatar
赤座 久樹

ありがとうございました!

ログインしてコメントを残してください。
Powered by Zendesk