APIでファイルをゴミ箱に移動する
trash_onlyを使用してファイルを冪等にゴミ箱へ移動し、削除済み一覧で確認します。2回目にフラグなしのDELETEを送ると全バージョンが完全に消去されるため避けてください。
最終確認日
スクリーンショットは英語版の画面です。
自動処理で復元可能な削除を行う場合はDELETE /api/files/:id?trash_only=1を使用してください。この保護により繰り返し送信しても問題は起きません。フラグなしのDELETEの動作は状態に依存します。削除前のファイルはゴミ箱に移動し、既にゴミ箱にあるファイルは完全に消去します。

始める前に
- フルアクセスのAPIキーを使用してください。ワークスペースのロールには、呼び出し元のファイルの場合は
delete_own_files、他のオーナーのファイルの場合はdelete_any_fileが必要です。 - 削除前にファイルID、名前、バージョン数、現在の親を記録してください。
- 削除済みの項目は完全に消去するまでストレージを使用します。消去は取り消せません。
手順
- 対象のメタデータを読み取り、IDが意図したワークスペースに属することを確認してください。既に削除済みの場合は、ジョブがその状態を明示的に扱う場合を除き停止します。
- Bearerキーを使用して
DELETE /api/files/file_id?trash_only=1を送信してください。permanent=1は含めないでください。2つのフラグを併用することはできません。 - 最初のゴミ箱への移動では
{ "ok": true, "permanent": false }を受け取ります。安全なリクエストを繰り返すと{ "ok": true, "already_trashed": true }が返る場合があります。 GET /api/files?deleted=1を照会し、同じIDを探してください。フィルターやページ分割でも項目が見えなくなるため、通常の一覧にないことだけでは十分な証拠になりません。- ゴミ箱への移動の受領情報をジョブの記録とともに保存してください。フラグなしの2回目のDELETEを一般的な再試行として送らないでください。サーバーはゴミ箱にある状態を消去の許可と解釈します。
- 完全な削除が明示的に承認された場合は
DELETE /api/files/file_id?permanent=1を送信し、削除済み一覧から消えたことを確認してください。この操作は取り消せず、すべてのバージョンを復元できません。

期待される結果
安全なリクエストは削除前のファイルをゴミ箱に移動し、繰り返すと消去せずにalready_trashedを返します。ストレージ使用量が減るのは、別途完全な削除をリクエストした後だけです。
トラブルシューティング
削除済み一覧にファイルがない場合 再試行する前にページ分割、ワークスペース、レスポンスのステータスを確認してください。
403が返る場合 キーのフルスコープ、オーナーの権限、ロックのルールを確認してください。
フラグなしのDELETEのレスポンスが失われた場合 次の呼び出しを行う前に通常の一覧と削除済み一覧の両方を確認してください。既にゴミ箱にある可能性がある項目に対してフラグなしで再試行しないでください。
関連ガイド
この記事は役に立ちましたか?
評価の結果を読み込んでいます…
投票すると、回答を変更できるように、必要な投票用Cookieが最長180日間保存されます。
質問と回答
このガイドの手順について質問できます。質問は確認後に公開されます。
公開の質問には、アカウントの詳細、認証情報、非公開ファイルを含めないでください。これらについては 非公開サポート をご利用ください。
質問を読み込んでいます…
dosyaアカウントにサインインすると、質問を投稿できます。