Masukkan ke sampah atau hapus file dan folder

Anda dapat menghapus file dan folder Google Drive dari Drive Saya dan drive bersama. Anda memiliki dua opsi untuk melakukannya: sampah atau hapus.

Anda dapat memindahkan file dan folder ke sampah, lalu memulihkannya (dalam waktu 30 hari setelah membuangnya). Menghapus file dan folder akan menghapusnya secara permanen dari Drive. Jika Anda membuang beberapa file atau folder sekaligus secara permanen, mungkin perlu waktu cukup lama sampai Anda melihat perubahannya.

Panduan ini menjelaskan cara membuang file di Drive.

Sampah

Untuk menghapus file Drive, Anda dapat memindahkannya ke sampah. File di sampah akan otomatis dihapus setelah 30 hari. Anda dapat memulihkan file dari sampah sebelum periode 30 hari.

Hanya pemilik file yang dapat memasukkan file ke sampah, dan pengguna lain tidak dapat melihat file di tempat sampah pemilik. Jika Anda mencoba membuang file yang bukan milik Anda, error insufficientFilePermissions akan muncul. Untuk mengetahui informasi selengkapnya, lihat Izin.

Untuk memverifikasi bahwa Anda adalah pemilik file, panggil metode files.get dengan fileId dan parameter fields yang ditetapkan ke kolom boolean ownedByMe. Kolom ownedByMe tidak diisi untuk file di drive bersama karena file tersebut dimiliki oleh drive bersama, bukan pengguna perorangan. Untuk mengetahui informasi selengkapnya tentang cara menampilkan kolom menggunakan parameter fields, lihat Menampilkan kolom tertentu untuk file.

Jika Anda bukan pemilik file, tetapi masih ingin menyalin file yang telah dibuang, lakukan salah satu langkah berikut:

  • Buat salinan file.
  • Hubungi pemiliknya dan minta dia memulihkannya dari sampah.

Memindahkan file ke sampah

Untuk memindahkan file ke sampah, gunakan metode files.update dan tetapkan kolom trashed ke True. Untuk memindahkan file drive bersama, Anda juga harus menetapkan parameter kueri supportsAllDrives ke True. Untuk informasi selengkapnya, lihat Menerapkan dukungan drive bersama.

Jika berhasil, isi respons akan memuat instance resource file.

Contoh kode berikut menunjukkan cara menggunakan fileId untuk menandai file sebagai dibuang:

Python

body_value = {'trashed': True}

response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()

Node.js

const body_value = {
  'trashed': True
};

const response = await drive_service.files.update({
      fileId: 'FILE_ID',
      requestBody: body_value,
    });
    return response;

Ganti FILE_ID dengan fileId file yang ingin Anda buang.

Menentukan properti file yang dibuang

Jika file dibuang, Anda dapat mengambil properti files tambahan. Anda dapat menggunakan metode files.get dan menyertakan kolom berikut dalam parameter fields. Untuk informasi selengkapnya, lihat Menampilkan kolom tertentu untuk file.

Kolom berikut diisi untuk semua file:

  • trashed: Apakah file dibuang, baik secara eksplisit maupun dari folder induk yang dibuang. Perlu diperhatikan bahwa saat menggunakan trashed dengan metode files.update menetapkan status file, metode files.get akan mengambil status file.
  • explicitlyTrashed: Apakah file dibuang secara eksplisit, bukan dibuang secara berulang, dari folder induk.

Kolom berikut hanya diisi untuk file yang berada dalam drive bersama:

  • trashedTime: Waktu saat item dibuang dalam format tanggal-waktu RFC 3339. Jika Anda menggunakan Drive API v2 versi sebelumnya, kolom ini diberi nama trashedDate.
  • trashingUser: Jika file secara eksplisit dibuang, pengguna yang membuangnya.

Memulihkan file dari sampah

Untuk memulihkan file dari sampah, gunakan metode files.update dan tetapkan kolom trashed ke False. Untuk membatalkan penghapusan file drive bersama, Anda juga harus menetapkan parameter kueri supportsAllDrives ke True. Untuk informasi selengkapnya, lihat Menerapkan dukungan drive bersama.

Jika berhasil, isi respons akan memuat instance resource file.

Contoh kode berikut menunjukkan cara menggunakan fileId untuk menandai file sebagai tidak dibuang:

Python

body_value = {'trashed': False}

response = drive_service.files().update(fileId="FILE_ID", body=body_value).execute()

Node.js

const body_value = {
  'trashed': False
};

const response = await drive_service.files.update({
      fileId: 'FILE_ID',
      requestBody: body_value,
    });
    return response;

Ganti FILE_ID dengan fileId file yang ingin Anda batalkan sampahnya.

Kosongkan Sampah

Anda dapat menghapus secara permanen semua file Drive yang telah dipindahkan ke sampah oleh pengguna menggunakan metode files.emptyTrash. Untuk mengosongkan sampah drive bersama, Anda juga harus menetapkan parameter kueri driveId ke ID drive bersama.

Jika berhasil, isi respons akan berisi instance kosong.

Contoh kode berikut menunjukkan cara menggunakan fileId untuk menghapus semua file di sampah:

Python

response = drive_service.files().emptyTrash().execute()

Node.js

 const response = await drive_service.files.emptyTrash({
    });
    return response;

Hapus

Anda dapat menghapus file Drive secara permanen tanpa memindahkannya ke tempat sampah. Setelah Anda menghapus file, siapa pun yang Anda ajak berbagi file tersebut akan kehilangan akses ke file tersebut. Jika ingin orang lain mempertahankan akses ke file, Anda dapat mentransfer kepemilikan kepada orang lain sebelum menghapus.

Untuk menghapus file drive bersama, pengguna harus memiliki role=organizer di folder induk. Jika Anda menghapus folder, semua turunan yang dimiliki pengguna juga akan dihapus. Untuk mengetahui informasi selengkapnya, lihat Izin.

Untuk menghapus file milik pengguna secara permanen tanpa memindahkannya ke sampah, gunakan metode files.delete. Untuk menghapus file drive bersama, Anda juga harus menetapkan parameter kueri supportsAllDrives ke True. Untuk mengetahui informasi selengkapnya, lihat Menerapkan dukungan drive bersama.

Jika berhasil, isi respons akan berisi instance kosong.

Contoh kode berikut menunjukkan cara menggunakan fileId untuk menghapus file:

Python

response = drive_service.files().delete(fileId="FILE_ID").execute()

Node.js

 const response = await drive_service.files.delete({
      fileId: 'FILE_ID'
    });
    return response;

Ganti FILE_ID dengan fileId file yang ingin Anda hapus.

Izin

Tabel berikut menunjukkan izin peran yang diperlukan untuk melakukan setiap operasi. Untuk mengetahui daftar lengkap peran dan operasi yang diizinkan oleh setiap peran, lihat Peran dan izin.

Operasi yang diizinkan owner organizer fileOrganizer writer commenter reader
Memindahkan file dan folder ke sampah
Memulihkan file dan folder dari sampah
Kosongkan sampah
Menghapus file atau folder secara permanen
Menghapus file dan folder di drive bersama [*]

Kapabilitas

Resource files berisi kumpulan kolom boolean capabilities yang digunakan untuk menunjukkan apakah suatu tindakan dapat dilakukan pada file.

Untuk memeriksa kemampuan, panggil metode files.get dengan fileId dan parameter fields yang ditetapkan ke kolom capabilities. Untuk mengetahui informasi selengkapnya tentang cara menampilkan kolom menggunakan parameter fields, lihat Menampilkan kolom tertentu untuk file.

Kolom berikut diisi untuk semua file:

  • capabilities.canTrash: Apakah pengguna saat ini dapat memindahkan file ini ke sampah.
  • capabilities.canUntrash: Apakah pengguna saat ini dapat memulihkan file ini dari sampah.
  • capabilities.canDelete: Apakah pengguna saat ini dapat menghapus file ini.
  • capabilities.canRemoveChildren: Apakah pengguna saat ini dapat menghapus turunan dari folder ini. Nilai ini salah jika item bukan merupakan folder.

Kolom berikut hanya diisi untuk file yang berada dalam drive bersama:

  • capabilities.canTrashChildren: Apakah pengguna saat ini dapat membuang turunan dari folder ini atau tidak. Nilai ini salah jika item bukan merupakan folder.
  • capabilities.canDeleteChildren: Apakah pengguna saat ini dapat menghapus turunan folder ini. Nilai ini salah jika item bukan merupakan folder.