2014年9月14日に実施した定期メンテナンスを実施しました。
事前情報でお知らせしたkintone APIの変更点のほかに、次の変更が適用されています。
kintone API SDK(β) for Java
指定したアプリの情報を取得するAPIに対応しました。
公開済みの kintone API SDK(β) for Java を再取得してください。
kintone JavaScript API
改修された不具合
- 空の配列またはオブジェクトをパラメータに指定してkintone APIを実行すると、Webブラウザを操作できなくなる。
※以降は、事前情報でお知らせしたkintone APIの変更点です。
kintone REST API
改修された不具合
- 次のAPIで、「rights[].entities[].entity.code」パラメータに、テーブル内のユーザー選択フィールドを指定できない。
- レコードのアクセス権を更新するAPI
- フィールドのアクセス権を更新するAPI
- 0以下のidを指定して、フィールドのアクセス権を更新するAPI(/k/v1/field/acl.json)を実行した場合に、表示されるエラーが正しくない。
改修前のエラーメッセージ:指定したアプリ(id:XX)が見つかりません。削除されている可能性があります。
改修後のエラーメッセージ:入力内容が正しくありません。最小でも1以上です。
- 存在しないフィールドの値を指定すると、レコードを一括操作するAPI(/k/v1/records.json)の実行に失敗する。
改修前の動作:エラーになり、実行されない。
改修後の動作:エラーにならず、存在するフィールドに対する操作は完了する。
- APIトークンを使用してゲストスペース内のアプリにレコードを登録すると、そのアプリのレコード一覧画面を表示できなくなる。
変更された仕様
- レコードのアクセス権を更新するAPI(/k/v1/record/acl.json)で、filterCondパラメータの指定に次の関数を使用できないように変更
- NOW()
- TODAY()
- LAST_MONTH()
- THIS_MONTH()
- THIS_YEAR()
※上記の関数を使用した設定が正しく動作しないことによる、仕様変更です。
kintoneの画面上では、2014年7月13日のアップデートで、同様の条件を設定できないよう変更されています。
なお、アップデート前に指定した設定は、アップデート後も維持されます。
ただし、設定が正しく動作しないため、期待したアクセス権が適用されない場合があります。
追加された機能
- 指定したアプリの次の情報を取得するAPI
- ID
- アプリコード
- 名前
- 説明
- 所属するスペースのID
- 所属するスレッドのID
- 作成日時
- 作成者(ログイン名と表示名)
- 更新日時
- 更新者(ログイン名と表示名) ※スペース内のアプリではない場合、所属するスペースのIDとスレッドのIDはnullになります
リクエスト例:
// アプリIDが1のアプリ情報を取得する場合 kintone.api('/k/v1/app', 'GET', { "id": 1 }, function (resp) { console.log(resp)} ); // アプリIDが1と2のアプリ情報を一括して取得する場合 kintone.api('/k/v1/apps', 'GET', { "ids": [1,2] }, function (resp) { console.log(resp)} );
レスポンス例:
// 1件ずつ取得した場合 { "appId": "1", "code": "", "name": "アプリ", "description": "アプリです", "spaceId": "2", "threadId": "3", "createdAt": "2014-05-02T05:14:05.000Z", "creator": { "code": "", "name": "" }, "modifiedAt": "2014-06-02T05:14:05.000Z", "modifier": { "code": "user1", "name": "user1" } } // 一括で取得した場合 { "apps": [ { "appId": "1", "code": "BAR", "name": "MyTestApp", "description": "" "spaceId": null, "threadId": null, "createdAt": "2014-06-02T05:14:05.000Z", "creator": { "code": "user1", "name": "user1" }, "modifiedAt": "2014-06-02T05:14:05.000Z", "modifier": { "code": "user1", "name": "user1" } }, { "appId": "2", "code": "FOO", "name": "TEST", "description": "" "spaceId": "123", "threadId": "456", "createdAt": "2014-06-03T05:14:05.000Z", "creator": { "code": "user2", "name": "user2" }, "modifiedAt": "2014-06-03T05:14:05.000Z", "modifier": { "code": "user2", "name": "user2" } } ] }
kintone JavaScript API
改修された不具合
- スマートフォンのレコード追加/編集画面で、ユーザー選択フィールドの値を編集すると、指定したcodeがログイン名と⼀致するユーザーが選択されない不具合を改修。
改修前の動作:指定したcodeが表示名と一致するユーザーが選択される。
改修後の動作:指定したcodeがログイン名と一致するユーザーが選択される。
変更された仕様
フィールド形式 の次のフィールドで、ゲストユーザーが含まれている場合、"code" に "guest/" が含まれるようになります。
- ユーザー選択フィールド
- 作成者フィールド
- 更新者フィールド
ユーザー選択フィールドで、ゲストユーザーのログイン名が "sato@cybozu.com" の例
変更前 |
"<フィールドコード>": { "type": "USER_SELECT", "value": [ { "code": "sato@cybozu.com", "name": "Noboru Sato" } ] } |
変更後 |
"<フィールドコード>": { "type": "USER_SELECT", "value": [ { "code": "guest/sato@cybozu.com", "name": "Noboru Sato" } ] } |
追加された機能
- ゲストユーザーが、kintoneに読み込んだJavaScriptでREST APIを使用する機能
ゲストユーザーは次の処理を実行できます。 - レコードの取得
- レコードの登録
- レコードの更新
- レコードの削除
- フォーム設計情報の取得
- アプリ情報の取得
- ファイルのダウンロード
- ファイルのアップロード
- kintone.apiの第1引数に、httpsから始まるURLで、実行するREST APIのエンドポイントを指定する機能
kintone.apiは、REST APIのリクエストを送信する関数です。
リクエスト例:
// アプリIDが1、レコードIDが5のレコード情報を取得してレコード番号を出力する場合 kintone.api('https://(サブドメイン名).cybozu.com/k/v1/record.json', 'GET', {app: 1, id: 5}, function(resp) { console.log(resp['record']['レコード番号']['value']); );
- URLを取得するAPIに引数を追加
引数にtrueを指定すると、次の画面でAPIを実行した場合に、REST APIの実行に必要なゲストスペース用のエンドポイントが返されます。 - ゲストスペース内の画面
- ゲストスペース内のアプリの通知を開いた画面
リクエスト例:
// スペースIDが1のスペースで実行する場合 var url = kintone.api.url('/k/v1/record', true); console.log(url); // 出力結果: // "https://(サブドメイン名).cybozu.com/k/guest/1/v1/record.json" // QueryString付きのURLを取得する場合 var urlForGet = kintone.api.urlForGet('/k/v1/records', {app:1,fields:["レコード番号"]}, true); console.log(decodeURIComponent(urlForGet)); // 出力結果: // https://example.cybozu.com/k/guest/1/v1/records.json?app=1&fields[0]=レコード番号
記事に関するフィードバック
記事のコメント欄は記事に対するフィードバックをする場となっております。
右の記事フィードバックのためのガイドを参照してコメントしてください。
記事のリンク切れなど、気になる点がある場合も、こちらのフォームからフィードバックいただけますと幸いです。