Panduan perbandingan Drive API v2 dan v3

Versi Google Drive API terbaru adalah v3. Performa di v3 lebih baik karena penelusuran hanya menampilkan subset kolom. Gunakan versi saat ini kecuali jika Anda memerlukan koleksi v2. Jika Anda menggunakan v2, sebaiknya migrasikan ke v3. Untuk bermigrasi, lihat Bermigrasi ke Drive API v3. Untuk mengetahui daftar lengkap perbedaan versi, lihat referensi perbandingan Drive API v2 dan v3.

Jika Anda ingin terus menggunakan v2, lihat perubahan Panduan Drive API v2 untuk mempelajari cara beberapa petunjuk dalam panduan v3 harus diubah untuk developer v2.

Untuk mempelajari peningkatan Drive API v3 lebih lanjut, Anda dapat menonton video berikut dari engineer Google yang membahas desain API baru.

Peningkatan V3

Untuk mengoptimalkan performa dan mengurangi kompleksitas perilaku API, v3 memberikan peningkatan ini dibandingkan versi API sebelumnya:

  • Penelusuran file dan drive bersama tidak menampilkan resource lengkap secara default, hanya sebagian kolom yang biasa digunakan yang ditampilkan. Untuk mengetahui detail selengkapnya tentang fields, lihat metode files.list dan metode drives.list.
  • Hampir semua metode yang menampilkan respons kini memerlukan parameter fields. Untuk mengetahui daftar semua metode yang memerlukan fields, lihat Referensi Drive API.
  • Resource yang memiliki kemampuan duplikat telah dihapus. Beberapa contohnya:
    • Metode files.list mencapai fungsi yang sama dengan koleksi Children dan Parents, sehingga dihapus dari v3.
    • Metode Realtime.* telah dihapus.
  • Data Aplikasi tidak ditampilkan secara default dalam penelusuran. Di v2, Anda dapat menetapkan cakupan drive.appdata, dan cakupan ini akan menampilkan data aplikasi dari metode files.list dan metode changes.list, tetapi akan memperlambat performa. Di v3, Anda menetapkan cakupan drive.appdata, dan juga menetapkan parameter kueri spaces=appDataFolder untuk meminta data aplikasi.
  • Semua operasi pembaruan menggunakan PATCH, bukan PUT.
  • Untuk mengekspor Dokumen Google, gunakan metode files.export.
  • Perilaku metode changes.list berbeda. Sebagai ganti ID perubahan, gunakan token halaman buram. Untuk melakukan polling pengumpulan perubahan, panggil metode changes.getStartPageToken terlebih dahulu untuk nilai awal. Untuk kueri berikutnya, metode changes.list akan menampilkan nilai newStartPageToken.
  • Metode update kini menolak permintaan yang menentukan kolom yang tidak dapat ditulis.
  • Kolom exportFormats dan importFormats v2 di resource about adalah daftar format impor atau ekspor yang diizinkan. Di v3, ini adalah peta jenis MIME dari kemungkinan target ke semua impor atau ekspor yang didukung.
  • Alias appdata dan appfolder v2 kini menjadi appDataFolder di v3.
  • Resource properties dihapus dari v3. Resource files memiliki kolom properties yang berisi key-value pair yang benar. Kolom properties berisi properti publik, dan kolom appProperties berisi properti pribadi, sehingga kolom visibilitas tidak diperlukan.
  • Kolom modifiedTime di resource files diperbarui saat terakhir kali seseorang mengubah file. Di v2, kolom modifiedDate hanya dapat diubah saat diupdate jika Anda menetapkan kolom setModifiedDate.
  • Kolom viewedByMeTime di resource files tidak diperbarui secara otomatis.
  • Untuk mengimpor format Google Dokumen, Anda menetapkan mimeType target yang sesuai dalam isi resource. Di v2, Anda menetapkan ?convert=true.
  • Operasi impor menampilkan error 400 jika format tidak didukung.
  • Pembaca dan pengomentar tidak dapat melihat izin.
  • Alias me untuk izin dihapus.
  • Beberapa fungsi tersedia sebagai bagian dari resource permintaan, tetapi sebagai gantinya tersedia sebagai parameter permintaan. Misalnya:
    • Di v2, Anda dapat menggunakan children.delete untuk menghapus file turunan dari folder induk.
    • Di v3, Anda menggunakanfiles.update pada turunan dengan ?removeParents=parent_id di URL.

Perbedaan lainnya

Nama kolom dan parameter berbeda di v3. Contohnya antara lain:

  • Properti name menggantikan title di resource files.
  • Time adalah akhiran untuk semua kolom tanggal dan waktu, bukan Date.
  • Operasi List tidak menggunakan kolom items untuk memuat kumpulan hasil. Jenis resource menyediakan kolom untuk hasil (seperti files atau changes).