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

2016/01/10
kintone API2016

年1月10日の定期メンテナンスの、kintone APIの更新に関する情報をお知らせします。
本アップデートは2015年12月13日に予定しておりましたが、「kintone on cybozu.com」のリリースが延期となった影響で、2016年1月10日のアップデート後での更新に変更されています。
kintone REST API

変更される仕様の の拡張子は小文字だけしか対応しなくなります。
例として、 月のアップデート後はGETで /k/v1/apps.JSON を呼ぶと、404エラーが返るようになります（現状では200が返ります）。
エラーが返らないようにするためには小文字で /k/v1/apps.json を呼ぶように変更をお願いします。
ユーザーの言語設定が「ブラウザに従う」になっている場合に、Accept-Language
ヘッダーがないとき、出力するメッセージ（APIのエラーなど）はcybozu.com共通
管理の「ローカライズの設定」の「言語」に設定されている言語になります。
アップデート前は、出力するメッセージは日本語のみです。
※12月のアップデートで、cybozu.com共通管理に「ローカライズの設定」の「言語」を設定(ja,en,zh)する機能が追加されます。
※日本国内のお客様は原則デフォルトで「ローカライズの設定」の「言語」が「ja」になります
日時のフォーマットの仕様が変更されます。
アップデート前
フィール
フォーマット説明
ドタイプ
日時 取得時 YYYY-MM「YYYY-MM-DD」と「HH:MM:SS」のDDTHH:MM:SSZ
間の「T」は固定値です。
「HH:MM:SS」の後ろの「Z」は固定値です。
REST API URL
12

登録・更新時 YYYY-MMDDTHH:MM:SS±HH:MMまたは YYYY-MMDDTHH:MM:SSZ

アップデート後フィール
フォーマットドタ
イプ
日時

取得時 YYYY-MMDDTHH:MM:SSZ

登録・更新時 YYYY-MMDDTHH:MM:SS±HH:MMまたは YYYY-MMDDTHH:MM:SSZ

取得時の「Z」はUTCを表します。一覧の取得APIでは日時はUTCで出力されます。
日本時間（JST）の2012年3月22日14時00分は次のように表せます。
例）「2012-03-22T05:00:00Z」「YYYY-MM-DD」と「HH:MM:SS」の間の「T」は固定値です。
「HH:MM:SS」の後ろの「Z」は固定値です。
登録・更新時の「±HH:MM」には、UTCとの時刻の差を指定します。
日本時間（JST）の2012年3月22日14時
17分は次のように表せます。
例1）「2012-0322T14:17:00+09:00」
例2）「2012-03-22T05:17:00Z」
説明「YYYY-MM-DD」と「HH:MM:SS」の間の「T」は固定値です。
「HH:MM:SS」の後ろの「Z」は固定値です。
取得時の「Z」はUTCを表します。一覧の取得APIでは日時はUTCで出力されます。
日本時間（JST）の2012年3月22日14時00分は次のように表せます。
例）「2012-03-22T05:00:00Z」「T」以降を省略した場合、UTCとして扱われます。
「YYYY-MM-DD」と「HH:MM:SS」の間の「T」は固定値です。
「HH:MM:SS」の後ろの「Z」は固定値です。
登録・更新時の「±HH:MM」には、UTCとの時刻の差を指定します。
日本時間（JST）の2012年3月22日14時17分は次のように表せます。

例1）「2012-0322T14:17:00+09:00」
例2）「2012-03-22T05:17:00Z」「T」以降を省略した場合、UTCとして扱われます。

修正される不具合

上にappパラメータを付加し、ボディにもappを指定している場合、URL上のパラメータが優先される。
改修後は、ボディのappが優先されます。
具体的な例として、レコードの登録APIでURLパラメータに app=1 を指定し、ボディに下記の内容を指定したとします。
URL{"app": 2,"record": {"hoge": {"value": 123}}}

月のアップデート前は、app=1 に hoge=123 のレコードが登録されますが、アップデート後はボディの情報が優先され、app=2 に hoge=123 のレコードが登録されます。
「次のキーワードを含む/含まない」を設定した関連レコード一覧(「さらに絞り込む条件」で文字列系のフィールドを指定すると選択出来るドロップダウン)があるとレコードの取得APIで不正なリクエストが発生する。
改修後は正常にレコードが取得出来るようになります。
レコードのアクセス権の取得APIを使用した際に、取得した値の順番がレコードのアクセス権の画面で設定した「ユーザー/組織/グループ」の順番と異なる。
改修後はレコードのアクセス権の画面に表示されている順番と同じになります。
2012年10月以前に作成し、フォームの設定を一度も更新していないアプリに対してフィールドの一覧取得APIを実行すると不正なリクエストになる。
改修後はエラーが発生せず、フィールドの一覧を取得できる。
ゲストユーザーの一括追加APIでパスワードに64文字を超える長さの文字列が設定できる。
改修後は64文字を超える長さのパスワードは設定できず「3文字以上、64文字以下である必要があります。 」のエラーメッセージが返ってきます。
言語設定が「Webブラウザに従う」に設定されてる際、テスト環境にアプリを作成するAPIでアプリを新規作成すると組み込みフィールド（レコード番号、作成者、更新者、作成日時、更新日時）の名前とフィールドコードが日本語になる。
改修後は言語設定が「Webブラウザに従う」に設定されてる際、APIでアプリを新規作成すると組み込みフィールドの名前とフィールドコードがリージョンに対応し12た言語になります。

修正されるエラーメッセージのクエリに関連レコード一覧以外のフィールドで関連レコード一覧記法を使ったときのエラー内容が変更されます
改修前：指定されたフィールド<フィールド名>が見つかりません。
改修後：クエリの指定が不正です。関連レコード一覧でないフィールド<フィールド名>では関連レコード一覧記法を利用できません。 フィールド<フィールド名>に指定したクエリが正しくありません。指定したクエリは、関連レコード一覧フィールドでのみ使用できます。
レコードのアクセス権に設定したフィールドをフォームの設定の変更APIで削除した際のエラー内容が変更されます
改修前：条件が重複しています。
改修後：フィールドを削除できません。削除しようとしているフィールドを条件にしたレコードのアクセス権が設定されています。
レコード一括削除APIでidsを101件以上指定した際のエラー内容が変更されます
改修前：不正なリクエストです。
改修後：一度に1件から100件までのレコードを削除できます。
※257件以上のレコードを指定した場合、「不正なリクエストです」のエラーが返ってきます
REST API

kintone JavaScript API

修正されるエラーメッセージ
特定のイベントで閲覧権限のないフィールドを指定した際に表示されるエラー内容が変更されます
改修前：(無し。コンソールにjsエラーが表示される。)
改修後：event.record['xx'] が不正です。
対象となるイベントは下記の通りです
レコード編集画面の保存実行前イベント (app.record.edit.submit)
レコード追加画面の保存実行前イベント (app.record.create.submit)
レコード編集画面のフィールド値変更時イベント (app.record.edit.change.<フィールドコード>)レコード追加画面のフィールド値変更時イベント (app.record.create.change.<フィールドコード>)レコード編集画面が表示された時のイベント (app.record.edit.show)
レコード追加画面が表示された時のイベント (app.record.create.show)User API

新規追加されるAPI
組織エクスポートAPI(JSON)