の定期メンテナンスにおける共通、更新情報

2019/12/08
cybozu.com
kintone API(2019/11/13)
2019年12月08日の定期メンテナンスの、cybozu.com 共通および kintone API の更新に関する情報をお知らせします。
お知らせの内容に追加、変更等ありましたら、こちらのコメントにて変更箇所を追記します。
また、APIドキュメントには仕様を順次公開していきます。
cybozu.com

仕様変更

共通

セキュアアクセスを設定した環境で、パスワード認証による REST API を実行する
場合、クライアント証明書に紐づくユーザーと異なるユーザーの認証情報（Administratorなど）を使って実行できる
対象 API
kintone REST API
Garoon REST API
User API内容：
セキュアアクセス設定環境にログインしたユーザーが、JavaScript カスタマイズで cybozu.com が提供するREST API を実行する場合、ログインユーザー（クライアント証明書に紐づくユーザー）と異なるユーザーの認証情報で、パスワード認証での API 実行ができます。
利用するには、「.com 共通管理」画面の「システム管理」の[ログイン] より、「証明書のユーザーとパスワード認証のユーザーが異なるアクセスを許可する」を有効にしてください。
kintone JavaScript API

仕様変更
ルックアップの「ほかのフィールドのコピー」で、複数選択フィールドおよびチェックボックスフィールドを指定できるようになります。これに伴い、以下の仕様が変更されます。

対象 API でルックアップの自動取得またはクリアを行ったとき、「他のフィールドのコピー」に指定された複数選択フィールドおよびチェックボックスフィールドの値を自動取得またはクリアできる
対象 API
ルックアップの自動取得ができるイベント
ルックアップのコピー先のフィールドの値を空にすることができるイベ
ント
レコードに値をセットする kintone.app.record.set()
kintone.mobile.app.record.set()
内容：
対象 API でルックアップの自動取得またはルックアップのコピー先のフィールドの値を空にする処理を行ったとき、「他のフィールドのコピー」に指定された複数選択フィールドおよびチェックボックスフィールドの値を自動取得またはクリアします

不具合修正

版で、特定の条件下において値の変更イベントが発火するとき、ブラウザの開発者ツールのコンソールにエラーが表示され、正常に処理が行えない場合がある現象
を解消
対象 API
レコード追加画面のフィールド値変更時イベント
app.record.create.change.<フィールドコード>
レコード編集画面のフィールド値変更時イベント
app.record.edit.change.<フィールドコード>
修正内容：
PC版で、次のすべての条件にあてはまるアプリにおいて、値の変更イベントが発火したとき
条件
1. ルックアップの「ほかのフィールドのコピー」に指定したフィールドに対し、値の変更イベントを設定している
2. そのイベントで、テーブルの行数を減らす（空にするを含む）処理を行っている
修正前：ブラウザの開発者ツールのコンソールにエラーメッセージが表示され、「行を減らす処理を行うテーブル」よりも下に配置されている「ほかのフィールドのコピー」に指定したフィールドに値がコピーされない
修正後：ブラウザの開発者ツールのコンソールにエラーメッセージが表示されず、正常に処理が行われる
スマートフォン版のアプリアクションでレコードを追加したとき、追加先のアプリの「フィールドの表示/非表示」API および「グループフィールドの開閉」API が実行されないことがある現象を解消
対象 APIPCレコード追加画面のフィールド値変更時イベント
mobile.app.record.create.change.<フィールドコード>
フィールドの表示/非表示 kintone.mobile.app.record.setFieldShown()
グループフィールドの開閉
kintone.mobile.app.record.setGroupFieldOpen()
修正内容：
スマートフォン版のアプリアクションでレコードを追加したとき、レコード追加先のレコード追加画面のフィールド値変更時イベントで修正前：フィールドの表示/非表示 API およびグループフィールドの開閉
API が実行されない
修正後：フィールドの表示/非表示 API およびグループフィールドの開閉
API が実行される
kintone REST API

仕様変更
ルックアップの「ほかのフィールドのコピー」で、複数選択フィールドおよびチェックボックスフィールドを指定できるようになります。これに伴い、以下の仕様が変更されます。
ルックアップフィールドを登録または更新したとき、「他のフィールドのコピー」に指定された複数選択フィールドおよびチェックボックスフィールドの値を自動取得またはクリアできる
対象 API
レコードの登録・レコードの更新 /k/v1/record.json、/k/v1/records.json
内容：
対象 API でルックアップフィールドを登録または更新したとき、「他のフィールドのコピー」に指定された複数選択フィールドおよびチェックボックスフィールドの値を自動取得またはクリアします。
フォームの設定 API におけるルックアップフィールドのプロパティに、「その他のフィールドのコピー」に指定した複数選択フィールドおよびチェックボックスフィールドの設定が含まれるようになる
対象API
フォームのフィールドの一覧を取得する /k/v1/app/form/fields.json/k/v1/preview/app/form/fields.json
フィールドを追加する・フォームの設定を変更する /k/v1/preview/app/form/fields.json
内容：
フォームのフィールドの一覧を取得する を使って、ルックアップの「他のフィールドのコピー」の設定を表す配列※から、複数選択フィールドおよびチェックボックスフィールドに関する設定を取得できます。
フィールドを追加する・フォームの設定を変更する を使って、ルックアップの「他のフィールドのコピー」の設定を表す配列※に、複数選択フィールドおよびチェックボックスフィールドに関する設定を指定できます。
※ properties.<フィールドコード>.lookup.fieldMappings「文字列（1行）」「リンク」フィールドに対する絞り込み設定で、in 演算子（次のいずれかと等しい）を使用できる
対象 API
カーソルの作成 /k/v1/records/cursor.json
レコードのアクセス権の変更 /k/v1/record/acl.json/k/v1/preview/record/acl.json
フィールドを追加する /k/v1/preview/app/form/fields.json
フィールドの設定を変更する /k/v1/preview/app/form/fields.json
一覧の設定の変更 /k/v1/preview/app/views.json
アプリのプロセス管理の設定の変更 /k/v1/preview/app/status.json
内容：「文字列（1行）」「リンク」に対する絞り込み設定で、in 演算子（次のいずれかと等しい）を使用できます。
ただし、サブテーブルまたは関連レコード一覧にある、「文字列（1行）」「リンク」フィールドには使用できません。
複数のAPI トークンを利用して、複数アプリにまたがるレコードの取得・作成・更新ができる
対象 API
レコードの取得・レコードの登録・レコードの更新 /k/v1/record.json /k/v1/records.json
内容：複数のAPI トークンを利用して、複数アプリにまたがるレコードの取得・作成・更新ができます。
たとえば、ルックアップフィールドの値の取得・登録・更新や、関連レコードの一覧での絞り込み結果を取得できます。

不具合修正

テーブルを含むレコードを更新するとき、テーブル内のフィールドの値を更新していなくても、変更履歴にテーブルに関する内容が含まれることがある現象を解消
対象 API
レコードの更新 /k/v1/record.json、/k/v1/records.json
修正内容：
以下の条件にすべてあてはまる処理を行ったとき条件
1. テーブルを含むレコードを更新するが、テーブル内のフィールドの値は更新しない
2. リクエストパラメータのレコード情報オブジェクトに、テーブルの行 id を指定していない
修正前：変更履歴に、テーブルに関する内容（テーブルのすべての行を削除し行を追加したような内容）が含まれる

修正後：変更履歴は、変更したフィールドの変更内容のみ