2016年5月8日の定期メンテナンスの、kintone API、User APIの更新に関する情報をお知らせします。
APIドキュメントには仕様を順次公開していきます。
kintone REST API
追加される機能
- レコード番号以外のキー項目でレコードの(一括)更新
更新キー(重複禁止)に利用するフィールドコード、フィールドの値を指定して、レコードの(一括)更新ができます。
更新キーの対象は、文字列(1行)か数値のみで、サブテーブルにあるそれらは対象外です。 - レコードのコメント一括取得
アプリIDとレコードIDを指定してレコードのコメントを一括取得できます。 - レコードのコメント投稿
アプリIDとレコードIDを指定してレコードのコメントやメンションを追加できます。 - レコードのコメント削除
アプリIDとレコードID、コメントIDを指定してレコードのコメントを削除できます。 - ステータスと作業者の更新
ユーザーまたはAPIトークンの権限で、アプリの管理、レコードの閲覧権限が有効な場合に、一つのレコードのステータスと作業者の更新ができます。
※ステータスの更新は、既にリリースされているAPIで実現可能です。 - 複数アプリへのレコード一括処理API(bulkRequest.json)でAPIトークン認証の対応
単一アプリの一括操作が対象になります。 - 日付の絞り込みで「今日」から「前/後」の条件指定
レコードの一括取得(クエリで条件を指定)に次の関数が追加され、クエリで指定できます。 - 今日から:FROM_TODAY(数値, 期間の単位)
※期間の単位には、DAYS/WEEKS/MONTHS/YEARS が指定できます。 - 日付の絞り込みで「今週/先週」の曜日指定
- レコードの一括取得(クエリで条件を指定)に次の関数が追加され、クエリで指定できます。
- 今週:THIS_WEEK()
※今週日曜日の場合には、THIS_WEEK("SUNDAY")になります。 - 先週:LAST_WEEK()
※先週日曜日の場合には、LAST_WEEK("SUNDAY")になります。 - 日付の絞り込みで「今月/先月」の日付指定
レコードの一括取得(クエリで条件を指定)のTHIS_MONTH、LAST_MONTHに次の引数を指定することができます。 - 今月末:THIS_MONTH(LAST)
- 今月のある日付:THIS_MONTH(数値)
- 組織選択の絞り込みで「優先する組織」関数の追加
レコードの一括取得(クエリで条件を指定)で組織選択フィールドに優先する組織で絞り込む際にPRIMARY_ORGANIZATION()を関数を指定できます。
変更される仕様
- 認証方式の変更
変更前:セッション認証、パスワード認証、APIトークン認証の順になります
変更後:パスワード認証、APIトークン認証、セッション認証の順になります
kintone.api()を使わずに、jQueryの$.ajaxなどの実装などでXHRリクエストをJavaScriptから実行しているカスタマイズへの影響
- パスワード認証のX-Cybozu-Authorization ヘッダの設定が不適切な場合(例:存在しないユーザーや不適切なパスワードを指定など)
変更前:セッション認証が成功し、実行されます
変更後:パスワード認証で失敗し、エラーになります - APIトークン認証のX-Cybozu-API-Token ヘッダの設定が不適切な場合(例:APIトークンが間違っている)
変更前:セッション認証が成功し、実行されます
変更後:APIトークン認証で失敗し、エラーになります - 適切なパスワード認証のヘッダを設定していた場合
変更前:セッション認証が成功し、セッション認証のユーザーで実行されます
変更後:パスワード認証が成功し、パスワード認証のユーザーで実行されます (実行ユーザーが変わる) - 適切なAPIトークン認証のヘッダを設定していた場合
変更前:セッション認証が成功し、セッション認証のユーザーで実行されます
変更後:APIトークン認証が成功し、Administratorで実行されます (実行ユーザーが変わる)
- 不適切なパスワード認証のヘッダと、正しいAPIトークン認証用のヘッダが設定されている場合
変更前:APIトークン認証が成功し、実行されます
変更後:パスワード認証で失敗し、エラーになります
- パスワード認証のX-Cybozu-Authorization ヘッダの設定が不適切な場合(例:存在しないユーザーや不適切なパスワードを指定など)
- 組織間のアクセスが有効な場合、閲覧できないユーザー名、組織名を非表示にする
共通管理の「組織間のアクセス権」設定の「組織間のアクセスを禁止する」が有効な場合、APIで返されるユーザ名と組織名の表示が変更されます。
変更前: 閲覧出来ないユーザー・組織のユーザ・組織名が返されます
変更後: 閲覧できないユーザー・組織は(表示できないユーザー)・(表示できない組織)の文字列が返されます
※ユーザーコード、組織コードについては今まで通り返されます
修正される不具合
- 絞り込み結果が10万件を超える条件をANDで組み合わせると絞り込み結果が空になる不具合
改修前:エラーメッセージが表示されるが、レコードが1件も表示されません
改修後:エラーメッセージとレコードが10万件まで表示されるまたは、上限の10万件を超えているメッセージが表示されます - レコード取得APIのソート条件に含まれるフィールドを削除すると一覧の取得APIがエラーになる不具合
改修前:不正なリクエストです
改修後:削除されたフィールドに対するソートが無視され、正しい結果を返します - レコード登録、更新APIで数値フィールドの値がダブルクォーテーションなしの小数の場合、小数点の桁数によってエラーになる不具合
ダブルクォーテーションあり/なしの値でも正常に実行されるように改修しました。
修正されるエラーメッセージ
- レコード一括更新を並列実行した際のメッセージを適切(わかりやすく)に修正
改修前:「不正なリクエストです。」
改修後:「レコードの更新が複数同時に行われたため、レコードの更新に失敗しました。時間をおいて再度お試しください。」 - 必須パラメータを省略したときの配列型で返ってくるエラーメッセージの修正
改修前:「Nullであってはいけません。」
改修後:「必須です。」になります。
kintone JavaScript API
追加される機能
- 変更されたフィールドやサブテーブルの行オブジェクトの取得
レコードのchangeイベントで取得されるイベントで変更のあったフィールドやサブテーブルの行のオブジェクトを取得できます。 - kintoneプロキシを使った添付ファイルのアップロードの対応
次のAPIでオブジェクトや文字列以外に、バイナリファイルも扱えるようになります。 - 削除イベントのキャンセル対応
app.record.{detail|index}.delete.submitイベントを戻り値で中断できます。
修正される不具合
- グループフィールド内に選択系のフィールド(ユーザー選択・組織選択・グループ選択)を配置した状態で、イベントハンドラを設定するとリストが正常に表示されない不具合
グループフィールドを展開し、選択系のフィールドを展開した際に発生する不具合です。 - フィールドの表示/非表示API(kintone.app.record.setFieldShown)が関連レコードに反映される不具合
関連レコードの対象アプリが自アプリで、表示するフィールドの表示/非表示をAPIで制御すると、関連レコードのフィールドまで反映される不具合です。 - フィールドの要素取得API(kintone.app.record.getFieldElement)で関連レコード内の要素を取得できる不具合
関連レコードの対象アプリが自アプリで、関連レコードに表示するフィールドに指定した場合に発生する不具合です。
User API
追加される機能
- グループエクスポートのJSON対応
グループIDまたはグループコードを指定して、グループ情報をJSON形式で取得できます。 - グループの所属ユーザーエクスポートのJSON対応
グループコードを指定して、所属するユーザー情報をJSON形式で取得できます。
次の機能も追加になります。
・日付の絞り込みで「今月/先月」の日付指定
レコードの一括取得(クエリで条件を指定)のTHIS_MONTH、LAST_MONTHに次の引数を指定することができます。
- 今月末:THIS_MONTH(LAST)
- 今月のある日付:THIS_MONTH(数値)
次の機能も追加になります。
・組織選択の絞り込みで「優先する組織」関数の追加
レコードの一括取得(クエリで条件を指定)で組織選択フィールドに優先する組織で絞り込む際にPRIMARY_ORGANIZATION()を関数を指定できます。
次の内容を変更しました。
変更前 日付の絞り込みで「今週/先週」から「前/後」の条件指定
変更後 日付の絞り込みで「今週/先週」の曜日指定