kintone のレコードは、復元しても元どおりにはならない
2026年10月4日
結論から書きます。 バックアップから kintone にレコードを書き戻すことはできますが、 「元の状態に戻す」ことはできません。 作成者・更新日時・計算フィールド・ステータスは書き戻せず、添付ファイルは参照が無効になり、 コメントは投稿者も投稿日時も指定できません。 これは製品の優劣ではなく、kintone の更新 API の仕様から来る制約です。 本記事は、自分で復元機能を実装して確かめた記録です。
「復元」と言われて想像するもの
誤削除からの復旧を検討するとき、多くの人は「事故の直前の状態に巻き戻る」ことを想像します。 スナップショットから仮想マシンを戻すような、あの感覚です。 kintone のバックアップはそうではありません。 できるのは、保存しておいた値を、いまのレコードに上書きすることだけです。
書き戻しに使えるのはレコード更新 API で、これは普通の更新操作と同じものです。 誰がいつ何を更新したかは、kintone 側が自動で決めます。 したがって「復元した」という事実そのものが、新しい更新として記録されます。
書き戻せないフィールド
更新 API が受け付けないフィールド型があります。実装で除外しているのは次のとおりです。
- レコード番号・レコードID・リビジョン
- kintone が採番します。削除したレコードを作り直すと、別の番号になります。
- 作成者・作成日時・更新者・更新日時
- 書き戻せません。復元すると、更新者は復元を実行したユーザー、更新日時は復元した瞬間になります。 「誰がいつ入力したか」を根拠にしている業務では、ここが問題になります。
- 計算フィールド
- 参照元のフィールドから再計算されます。直接の指定はできません。
- ステータス・作業者
- プロセス管理の状態は更新 API では動かせません。 承認済みのレコードを復元しても、ステータスは現在のままです。
- カテゴリー・関連レコード一覧・グループ・罫線・ラベル・スペース
- 値を持たないか、kintone 側が決める要素です。
当社では、これらを黙って落とさず、復元プランの時点で理由つきに列挙します。 「全部戻ります」と言ってしまうほうが売りやすいのは分かっていますが、 戻ると思っていたものが戻らなかったときに困るのは実行した人です。
添付ファイルは、参照だけでは戻らない
kintone の添付ファイルは、レコードの値としては fileKey という参照だけを持ちます。
実体は別に保管されています。
バックアップ当時の fileKey をそのまま書き戻しても、kintone 側で無効になります。
実体を保存していなければ、添付は失われます。
実装中に実際に踏んだ落とし穴を書いておきます。 添付は FILE フィールドの直下だけに入っているわけではありません。 サブテーブルの各行の中にも入ります。 ここを見落とすと、レコードは戻ったように見えて、 サブテーブル内の添付だけが黙って失われます。 検証環境の「明細」テーブルの証憑フィールドで、実際にこの状態を作ってしまいました。
コメントは、原理的に元どおりにできない
これが最も明確な制約です。kintone のコメント投稿 API は、 投稿者も投稿日時も指定できません。 したがって、消えたコメントを貼り直すと、こうなります。
- 本文
- 戻ります。
- 投稿者
- 復元を実行したユーザーになります。元の投稿者にはできません。
- 投稿日時
- 復元した瞬間になります。
つまりコメントの復元は「復旧」ではなく「記録の貼り直し」です。 承認のやりとりを証跡として扱っている場合、貼り直したものは同じ重みを持ちません。 当社は、元の投稿者と日時を本文に添えて貼り直し、 何件を、どういう形で貼り直すのかを実行前に必ず表示します。 見せずに貼ると、二重投稿や、誰が書いたのか分からないコメントが増えるだけです。
だから、復元は2段階にしている
以上を踏まえて、当社の復元は次の形にしています。
- 既定はドライラン。 明示的に確認フラグを付けない限り、本番へは1バイトも書きません。
- 先に計画を出す。 どのフィールドを書き戻すか、どれが戻らないか、コメントを何件貼り直すかを一覧で見せます。
- 書き戻す直前に、現在の状態をもう1世代取ります。 復元するという判断そのものが誤りだった場合に、巻き戻せるようにするためです。
- 1件の失敗で全体を止めません。 途中で例外を投げて「半分だけ復元された」状態を残すのが最悪なので、 失敗は集計して最後に返します。
検討するときに確かめてほしいこと
どの製品を選ぶにしても、次の3点は先に確かめることをおすすめします。 カタログの「復元できます」だけでは分かりません。
- 添付ファイルの実体を保存しているか。 参照だけでは戻りません
- サブテーブル内の添付も対象か。 ここは抜けやすい場所です
- コメントが対象か。そして、貼り直したときに投稿者と日時がどうなるか
当社では、自社の kintone でどのアプリにコメントが溜まっているか、添付の総容量はどれくらいかを 無料で実測してお返ししています。 読み取り専用の API のみを使い、書き込みは一切行いません。所要は10分ほどです。
本記事の内容は、当社の検証用 kintone 環境と当社製品の実装に基づいています(2026年9月〜10月)。 kintone の仕様は変更される可能性があります。 記載内容に誤りを見つけた場合は hello@tokimodoshi.com までご連絡ください。訂正します。 関連記事: kintone のレコードコメントは、削除しても痕跡が残らない