クイックスタート
このクイックスタートでは、4つの簡単なステップで、kintoneのAPIを使ったUIカスタマイズとデータ取得方法の基本を学びます。
Step 1: kintoneサブドメインの取得
まず、kintoneのカスタマイズや連携をテストする環境を用意します。
kintone開発者ライセンスは、開発者がkintone APIを無料で試すための環境です。
開発者ライセンスを取得したら、この記事に戻ってください。
Step 2: kintoneアプリの作成
取得したkintone環境にログインし、次の手順にしたがってアプリを準備します。
kintoneのポータルから「+」アイコンをクリックし、「顧客リスト」アプリを選択します。
確認画面で確定すると、kintone環境に「顧客リスト」アプリが追加されます。
Step 3: JavaScript API:画面のカスタマイズ
JavaScript APIを使った最も簡単な例として、レコード追加時、備考フィールドの初期値に「こんにちは、kintone!」を表示してみましょう。
アプリの設定を開き、フォームの中から備考フィールドの設定を開きます。
フィールドコードをnoteに設定します。
警告
フィールドコードはコード内で参照されます。大文字・小文字の区別やタイプミスがあると動かないため注意してください。
次のコードをコピーして、hello-kintone.jsで保存します。
|
|
カスタマイズファイルを適用して、レコード追加時、備考フィールドの初期値に「こんにちは、kintone!」と表示されることを確認します。
コード内のapp.record.create.showは、
レコード追加画面を表示した後のイベント
です。
同様に、他の画面や保存時、編集時などさまざまなイベントのAPIがあります。
詳しくは
イベント
を確認してください。
Step 4: REST API:curlでkintoneのデータを取得
次は、REST APIでkintone上にあるデータを取得します。
アプリIDとレコードIDの確認
APIのリクエストパラメーターには、アプリIDとレコードIDを含める必要があります。
これらのパラメーターを確認するには、レコード詳細画面に移動します。
アプリIDとレコードIDは、URLに次のように表示されます。
|
|
例:https://sample.cybozu.com/k/42/show#record=20の場合
| パラメーター | 値 |
|---|---|
| サブドメイン | sample |
| アプリID | 42 |
| レコードID | 20 |
リクエストURLの確認
REST APIのURLは、次の形式です。
|
|
例:kintoneサブドメインがsampleの場合
https://sample.cybozu.com/k/v1/record.json
先ほど確認したアプリIDとレコードIDを追加して、最終的なリクエストURLは次の形式になります。
|
|
これまでの例を組み合わせると、リクエストURLは次のようになります。
|
|
APIトークンの生成
kintone REST APIには、3つの異なる認証タイプがあります。
ここでは、APIトークン認証を使用します。
詳細は、
kintone REST API共通 認証
を参照してください。
「顧客リストアプリ」の任意のページから、右上の歯車アイコンをクリックして、アプリの設定にアクセスします。
「設定」タブを開き、「APIトークン」をクリックします。
新しいトークンを生成し、「保存」をクリックしてから「アプリを更新」をクリックします。
注意
APIトークンをアプリで使用できるようにするには、[アプリを更新]を必ずクリックしてください。
データの取得
これで、次の情報が準備できました。
- アプリIDとレコードID
- リクエストURL
- APIトークン
この情報を使用して、レコードデータを取得するcURLコマンドを次のように組み立てます。
APIトークンで認証する場合は、X-Cybozu-API-Tokenヘッダーを使用します。
|
|
たとえば、サブドメインsampleのアプリ42のレコード20のデータを、APIトークンDjsLvFiyqwDTDxJJSXnNiAuGARpPMnUIYzFluegQで取得する場合、次のコマンドを使用します。
|
|
このコマンドを実行すると、コマンドラインツールは指定されたレコードのデータをJSON形式で返します。
|
|
レスポンスの最初のプロパティはrecordです。
recordプロパティ内のプロパティは、レコード内に存在するフィールドで、特定の順序はありません。
たとえば、キー値ペア "部署名":{"type":"SINGLE_LINE_TEXT","value":"情報システム部"} は、フィールドコード部署名が文字列(1行)フィールドで、値が「情報システム部」を示しています。
このkintoneのデータは、他のサービスとのさまざまな連携に使用できます。
まとめ
わずか4つの簡単なステップで、kintoneのJavaScript APIでのUIカスタマイズとREST APIを使ったデータ取得ができました。
kintoneアプリには、新しいレコードを追加したり、既存のレコードを更新したりするAPIなど、他にも多くのAPIがあります。
